google搜索 51Testing站内搜索                    软件测试门户 | 软件测试培 训 | 文章资料精选 | 软件测试论坛 | 软件测试博客 | 测试招聘求职 
打印

[原创] QTP错误处理机制概述 / QuickTest Professional Error Handling

QTP错误处理机制概述 / QuickTest Professional Error Handling






关键词: QuickTest Professional    QTP    Exception    Error Handling    错误处理    On Error    Recovery Scenarios

本文针对QuickTest Professional(后面将简称QuickTest 或QTP)提供的运行时错误处理机制进行详细描述。内容包括各种错误处理方式的功能的介绍,各种机制的作用范围的分析,以及错误处理机制同时作用时的优先级别的分析。本文可以为QTP用户采用何种错误处理机制对测试脚本的运行时错误进行处理提供参考。

注1: 本文只对错误机制进行描述,并不涉及对各种错误机制适应性的分析。
注2: 所有功能介绍及实例基于QuickTest Profession 9.2版本,其他版本未经验证。

版权所有,转载请注明出处。

目录

1.        概述        3
2.        三种错误处理方式介绍        3
2.1        全局错误响应        3
2.2        VBScript的On Error错误处理方式        4
2.2.1        On Error Resume Next        4
2.2.2        On Error GoTo 0        4
2.2.3        Err对象        4
2.3        恢复场景Recovery Scenarios        4
3.        三种错误处理方式的作用域        8
3.1        全局错误响应        9
3.1.1        对Action中直接定义的函数:        9
3.1.2        对用ExecuteFile引入的函数:        9
3.1.3        对于Function Library 中定义的函数        9
3.1.4        对于Action的嵌套调用        11
3.2        VBScript的On Error错误处理方式        11
3.2.1        对Action中直接定义的函数:        11
3.2.2        对用ExecuteFile引入的函数:        12
3.2.3        对于Function Library 中定义的函数        12
3.2.4        对于Action的嵌套调用        13
3.3        错误恢复场景 Recovery Scenarios        13
4.        三种错误处理方式的优先级别        13

知识能力所限,错误疏漏之处在所难免,欢迎大家拍砖。

[ 本帖最后由 gy21st 于 2008-1-10 11:04 编辑 ]
附件: 您所在的用户组无法下载或查看附件

TOP

大致看了下,非常好,深入浅出~
多谢LZ~
路漫漫其修远兮,吾需努力再努力

欢迎加我MSN共同讨论QTP疑难杂症~加好友时请注明51testing~

TOP

看来非常详细,学习一下.

TOP

下来学习,谢谢楼主
个人主页:扬起测试的风帆

TOP

很好的文章,分析研究得很深、很全面!

想起以前设计QTP框架时,也需要考虑脚本错误的处理方法:

  • 当时发现Action之间的错误信息不能传递,感觉QTP的Action有很多局限。加上Action调用也不方便,在很多方面相比函数都差了很多,所以决定抛弃了Action,改用函数来作为测试脚本的组织方式。

  • QTP框架设计里,各个测试用例的测试脚本都写成Case函数放在函数库里,然后由一个统一的主控模块来调用执行各个Case函数。

  • Case函数里每个步骤都可能发生错误,Case函数不可能对每个步骤进行错误检测和处理,只有少数关键错误Case函数自己会处理,其它的错误Case函数就只能中止执行,将错误返回给主控模块了。

  • 主控模块是用ExecuteFile方式加载的Case函数库,然后用On Error Resume Next/On Error goto 0的方式调用Case函数的,这样保证Case函数里未处理的错误都能原样返回到主控模块。

  • 主控模块会检测和记录Case函数返回的错误信息,然后继续调用执行下一个Case函数,这样才能保证上一个Case的错误不会影响后续Case的执行。


以前也有一个帖子讨论了QTP的错误处理机制,不过没有LZ这个文章里讲的那么全面详细。
http://bbs.51testing.com/viewthread.php?tid=90373

TOP

学习一下,感谢楼主。

TOP

3Q!

TOP

好人哪!
不顶对不起社会!
性格决定命运,气度决定格局!
个人网站-http://www.lantianwei.com
欢迎大家访问!

TOP

引用:
原帖由 yabest 于 2008-1-9 02:47 发表
很好的文章,分析研究得很深、很全面!

想起以前设计QTP框架时,也需要考虑脚本错误的处理方法:

  • 当时发现Action之间的错误信息不能传递,感觉QTP的Action有很多局限。加上Action调用也不方便,在很多方面相 ...
  • 谢谢专家支持。
    之前怎么没注意到那个帖子呢,那样就不用花那么多时间去反复实验和比较了。。。

    TOP

    引用:
    原帖由 lantianwei 于 2008-1-9 10:00 发表
    好人哪!
    不顶对不起社会!
    多谢精神支持~~
    下了很多,支持的很少啊

    [ 本帖最后由 gy21st 于 2008-1-10 11:08 编辑 ]

    TOP

    顶起!学习了~~向楼主学习~
    南瓜啊,南瓜啊   你为何如此香甜
    吃南瓜啊,吃南瓜
    变成南瓜啊, 变成南瓜  不是傻瓜

    TOP

    支持LZ,下载了。

    TOP

    正在考虑这方面问题。
    多谢!
    nan

    TOP

    顶楼主的共享精神,谢谢

    TOP

    正在考虑这方面的东西,太感谢了。不过想理清楚还得具体操作

    TOP

    谢谢!
    我要成名!~

    TOP

    这个确实比较不懂。谢谢
    快乐生活!

    TOP

    这是好东西,学习了

    TOP

    写的非常棒,楼主好厉害

    TOP

    ddddddddddddddddddddddd

    TOP

    本功能由奇虎搜索实现

    相关主题

    标题 作者 最后发表
    点击阅读更多关于的相关帖子  更多相关主题
     
    当前时区 GMT+8, 现在时间是 2008-7-24 21:28Copyright(C)上海博为峰软件技术有限公司 2001-2007 电话:021-64471599-8017
    当您在访问网站、论坛及博客过程中遇到问题时可发送email:webmaster@51testing.com或发送论坛短信至管理员风在吹