linux社区爱心援助Linux认证系列教程业界动态站务新闻公司招聘网络学院网址大全LPI专题CISCO专题
设为首页
加入收藏
管理团队
JSP  
JAVA  
PERL  
 您的位置:首页 > 开发语言 > ASP >
栏目导栏
  php
  JSP
  ASP
  asp.net
  JAVA
  c/c++/c#
  perl
  JavaScript
  Basic
  Delphi
资料搜索
热门文章
·由HTTP 500 Internal server e
·会员系统“找回密码”的制作方
·ASP实现数字和字母组合并生成图
·简单的asp验证码程序示例
·用ASP制作强大的搜索引擎
·如何让图片自动缩放以适合界面
·如何用foreach遍历页面上所有的
·如何实现站点的RSS输出
·无组件实现文件上传/下载
·ASP如何获取真实IP地址
·asp中如何使用 HTML 表格
·采用XMLHTTP编写一个天气预报的
·80004005错误及其解决方法
·asp中如何调试 ASP 脚本
·asp+ajax打造无刷新新闻评论系
最新文章
·ASP教程:8、ASP内建对象Respo
·ASP教程:7、ASP内建对象Reque
·ASP教程:6、ASP脚本循环语句
·ASP教程:5、ASP脚本变量、函数
·ASP教程:4、ASP脚本基础
·ASP教程:3、ASP基础
·ASP教程:2、ASP简介
·ASP教程:1、Are you ready?
·ASP中使用SQL语句教程
·ASP进度条
·由HTTP 500 Internal server e
·Asp无组件生成缩略图
·ASP 系列函数大全(4)
·ASP 系列函数大全(3)
·ASP 系列函数大全(2)
Google
 
asp中如何调试 ASP 脚本
[ 作者:  加入时间:2007-10-17 15:16:30  来自:Linux联盟收集整理 ]
无论您的计划多么精密、经验多么丰富,脚本错误 (bug) 可能在最初就使您的 ASP 服务器端的脚本无法正确运行。也就是说调试,即查找和纠正脚本错误,对开发一个成功的和强健的 ASP 程序是非常重要的。

  Microsoft 脚本调试工具

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

  逐行运行服务器端脚本。

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

  启用调试

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

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

  手工打开 Microsoft 脚本调试器,调试 ASP 服务器端脚本。

  使用 Internet Explorer 请求 .asp 文件。如果该文件包含错误或人为添加的停止执行语句,那么 Microsoft 脚本调试程序将自动启动,显示该脚本,并且指出错误来源。

  脚本错误

  调试服务器端脚本时,您可能会碰到各种类型的错误。其中的某些错误使脚本无法正确执行、程序停止执行或返回错误结果。

  语法错误

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

  运行时错误

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

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

    Function Findanswer(x) pThLinux联盟
    'This statement generates a run-time error.pThLinux联盟
     Findanswer = x/0      pThLinux联盟
    End FunctionpThLinux联盟
  </script>

  必须纠正导致运行时错误的错误,这样才能使脚本在运行时不被中断。

  逻辑错误

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

  错误调试技术

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

  实时 (Just-In-Time, JIT) 调试

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

  断点调试

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

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

  VBScript Stop 语句调试器

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

  <% pThLinux联盟
    dayvalue = 3pThLinux联盟
    TheDay  =  WeekDayName(dayvalue)pThLinux联盟
    Stop   'set breakpoint here.pThLinux联盟
    Response.Write("Today is " + TheDay)pThLinux联盟
  %>

  当您在请求 Web 浏览器使用的先前的脚本时,调试程序启动并自动显示 .asp 文件,而且语句指针会指示 stop 语句的位置。一定要记住从交付使用的 .asp 文件中删除 Stop 语句。

  用 JScript Debugger 语句调试

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

  <%@ Language="JScript"  %>pThLinux联盟
  <%pThLinux联盟
    for (var count = 1; count <= 10; count++)  {        pThLinux联盟
      var eventest = count%2;         pThLinux联盟
      debugger         //Sets breakpoint pThLinux联盟
      if (eventest == 0) {pThLinux联盟
        response.write("Even value is " + count + "<br>")pThLinux联盟
      }pThLinux联盟
    }pThLinux联盟
  %>

  请记住从交付使用的 .asp 文件中删除 debugger 语句。

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

  脚本调试技巧

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

Linux联盟收集整理 ,转贴请标明原始链接,如有任何疑问欢迎来本站Linux论坛讨论
评论】【加入收藏夹】【 】【打印】【关闭
※ 相关链接
无相关信息