频道直达 - 学院 - 下载 - 交易 - 特效 - 字库 - 手册 -排名-工具- 繁體
网页教学网站开发 设为首页
加入收藏
联系我们
建站搜索: 常用广告代码   用户注册 | 用户登陆
您当前的位置:中国建站之家 -> 网站开发设计技术教程 -> asp教程 -> ASP系列讲座(十七)调试 ASP 脚本

ASP系列讲座(十七)调试 ASP 脚本

作者:未知  来源:转载  发布时间:2005-9-15 20:54:26  发布人:acx

减小字体 增大字体

无论您的计划多么精密、经验多么丰富,脚本错误 (bug) 可能在最初就使您的 ASP 服务器端的脚本无法正确运行。也就是说调试,即查找和纠正脚本错误,对开发一个成功的和强健的 ASP 程序是非常重要的。

Microsoft 脚本调试工具
Microsoft® script Debugger 是一个功能强大的调试工具,它能帮助您迅速查找错误并对服务器端的脚本进行交互测试。script Debugger 与 Windows Internet Explorer 3.0 版本或更新的版本一起工作。通过它,您可以:

逐行运行服务器端脚本。
在服务器端脚本执行时,打开命令窗口监视变量、属性或数组元素的值。
在特定行设置暂停标记,挂起服务器端脚本(使用调试工具或脚本命令)。
在运行服务器端脚本时跟踪过程。
注意   您可以使用调试工具查看脚本并找到错误所在,但是不能直接编辑脚本。要想改正错误,必须用编辑器编辑脚本然后保存,再运行脚本。

(该功能不能用于 Windows 95 或更高的版本。)

启用调试
在开始调试服务器端脚本之前,您必须首先配置 Web 服务器,使其支持 ASP 调试。

在启用 Web 服务器调试之后,就可以使用下面的任一方法调试脚本:

手工打开 Microsoft 脚本调试器,调试 ASP 服务器端脚本。
使用 Internet Explorer 请求 .asp 文件。如果该文件包含错误或人为添加的停止执行语句,那么 Microsoft 脚本调试程序将自动启动,显示该脚本,并且指出错误来源。
脚本错误
调试服务器端脚本时,您可能会碰到各种类型的错误。其中的某些错误使脚本无法正确执行、程序停止执行或返回错误结果。

语法错误
语法错误是经常碰到的错误,它是由不正确的脚本语法导致的。例如,命令拼写错误或传递给函数的参数不正确都将产生错误。语法错误可能导致您的脚本不能运行。

运行时错误
运行时错误是脚本在执行过程中脚本指令试图执行不可能的动作而导致的。例如,下面的脚本中包含一个被零除(一种非法的数学运算)的函数,将产生运行时错误:

<script language = "VBscript" runat = server>
  Result = Findanswer(15)
  document.write ("The answer is " &Result)

  Function Findanswer(x)
  'This statement generates a run-time error.
   Findanswer = x/0      
  End Function
</script>
必须纠正导致运行时错误的错误,这样才能使脚本在运行时不被中断。

逻辑错误
逻辑错误通常可能是潜在和难以检测的。如果有因键入错误或程序逻辑流程错误引起的逻辑错误,脚本可能会成功运行,但产生的结果却是错的。例如,一服务器端脚本计划对一个值列表排序,如果本应使用 “<” 符号比较数值,但却使用了“ >” 符号,那么将返回不正确的排序结果。

错误调试技术
可以使用多种不同的调试技术来查找错误的根源并测试应用程序。

实时 (Just-In-Time, JIT) 调试
当一个运行时错误中断了 ASP 脚本的执行时,Microsoft 脚本调试程序自动启动,显示 .asp 文件,将语句指针指向导致错误的行,并产生错误消息。这种调试方式称为实时 (JIT) 调试,计算机将暂停程序的执行。必须用编辑程序纠正这些错误,保存所做的修正,然后再运行脚本。

断点调试
当一个错误发生并且很难找到错误的根源时,可使用预设断点的调试方法。断点将脚本暂停在特定一行。可以在脚本中有疑问处设置一个或多个不同的断点,然后使用调试器去改正脚本中设置的变量或属性的值。当您纠正这些错误之后,可以清除断点以便您的脚本能不间断地运行。

请用 Microsoft 脚本调试程序打开脚本,设置断点。然后用 Web 浏览器请求此脚本。当执行到脚本中含有断点的行时,计算机启动脚本调试程序,并且语句指针会指在设置了断点的行上。

VBscript Stop 语句调试器
通过在服务器端脚本中有问题的部分前面插入 Stop 语句,您也可以将断点添加到用 VBscript 编写的服务器端脚本中。例如,下面的 ASP 脚本包含一个 Stop 语句,用来在显示结果之前暂停执行:

<%
  dayvalue = 3
  TheDay  =  WeekDayName(dayvalue)
  Stop 'set breakpoint here.
  Response.Write("Today is " + TheDay)
%>
当您在请求 Web 浏览器使用的先前的脚本时,调试程序启动并自动显示 .asp 文件,而且语句指针会指示 stop 语句的位置。一定要记住从交付使用的 .asp 文件中删除 Stop 语句。

用 Jscript Debugger 语句调试
要将断点加到用 Microsoft&reg; Jscript 编写的服务器端脚本中,可在有疑问的行前插入 debugger 语句。例如,下面的脚本包含了 debugger 语句,每次脚本循环到一个新值时,就会中断执行并自动启动 Microsoft 脚本调试程序。

<%@ Language="Jscript"  %>
<%
  for (var count = 1; count <= 10; count++)  {        
    var eventest = count%2;      
    debugger       //Sets breakpoint
    if (eventest == 0) {
      response.write("Even value is " + count + "<br>")
    }
  }
%>
请记住从交付使用的 .asp 文件中删除 debugger 语句。

注意   不要混淆 debugger 语句和 Jscript break 语句。在程序执行期间,break 语句仅退出当前循环,并不激活 Microsoft 脚本调试器,也不暂停程序的执行。

脚本调试技巧
除脚本调试程序外,一套好的调试技巧也能减少花费在分析脚本错误根源上的大量时间。尽管大部分错误是由显而易见的根源导致的,但命令拼写错误或丢失变量、某种类型的逻辑和执行错误也可能因不太明显的根源所致。

将本文收藏到QQ书签与更多好友分享
[打 印]
[] [返回上一页] [收 藏]
∷相关文章评论∷    (评论内容只代表网友观点,与本站立场无关!) [更多评论...]
精彩推荐
热门文章
· 注册码大全二
· 注册码大全四
· 注册码大全一
· 要10G免费网络硬盘的请进..
· 通过google 赶快来赚美金..
· 注册码大全十
· 头像-qq头像(qq新头像)4..
· 让你轻松架设FTP服务器1..
· 注册码大全三
· 梦幻背景图片7
· 卡通动物图片6
· 网页制作素材-按钮素材2..
· 让你轻松架设FTP服务器5..
· 风景图片8
· 注册码大全九
· 让你轻松架设FTP服务器2..
关注此文读者还看过
· 把文件存进access数据库..
· Flash5键盘鼠标应用(三..
· PHP4实际应用经验篇(8)
· fhttpd 模式
· 天津市出台网吧发展规划..
· 手把手教你使用Java来编..
· ASP HTTP 使用范例
· HTML彻底剖析:标记一览..
· 邓文迪任Myspace中国董事..
· 图象翻转
· 一教师120元注册中央一套..
· 发布成执行档之重要Acti..
· 16388音像网:听好音乐 力..
· YouTube创始人MaxLevchi..
· 网页设计中的审美需求
· 统计系统的搜索引擎关键..
相关文章
· 抵御入侵保护ASP系统的通用..
· 抵御入侵保护ASP系统的通用..
· Microsoft 脚本编码器(4) -..
· Microsoft 脚本编码器(3) -..
· Microsoft 脚本编码器(2) -..
· Microsoft 脚本编码器(1) -..
· ASP系列讲座(二十)维护 A..
· ASP系列讲座(十五)使用 H..
· ASP系列讲座(十一)Active..
· ASP系列讲座(十)ASP 内建..
· ASP系列讲座(三)创建 ASP..
· ASP系列讲座(二)ASP 的新..
· ASP系列讲座(一)关于 Act..
· Microsoft 脚本编码器Scrip..
· Microsoft 脚本编码器Scrip..
· Microsoft 脚本编码器Scrip..
关于本站 - 网站帮助 - 广告合作 - 下载声明 - 友情连接 - 网站地图 - 人才招聘
网站合作、内容监督、商务咨询:QQ: 9576619
Copyright ? 2005--2008 中国建站之家版权所有
粤ICP备05092265号