51Testing软件测试论坛

标题: 错误恢复场景(已经OK) [打印本页]

作者: lijinshui    时间: 2009-7-11 14:11
标题: 错误恢复场景(已经OK)
全局错误响应设置为 pop up message box

新建错误恢复场景并应用到 test 中
-  触发条件为 Test run error(Any error)
-  错误恢复处理为 Close application process (notepad.exe)
-  错误恢复后处理方式为 Stop the test run
新建一个 Action1,把 notepad.exe 相关对象都已添加进对象库,打开 notepad.exe
(不打开 font 设置对话框)
当 Action1 中代码如下
----------------------------------------------------------------------------------
Dim i
Window("Notepad").Dialog("Font").WinButton("OK").Click

i=1/0
Msgbox " 1 " & Err.Number & " " & Err.Description
---------------------------------------------------------------------------------

正常情况下会由于第二行没有找到 Dialog("Font")对象,会进行错误恢复处理,关闭 notepad.exe,并执行错误恢复后
处理 stop test run。Msgbox并不执行。

但是我这里直接就来了个 RUN ERROR  说 CANOT FIND  THE "FONT" OBJECT 并没有执行场景恢复, 到底那里有问

[ 本帖最后由 lijinshui 于 2009-7-14 14:45 编辑 ]
作者: lijinshui    时间: 2009-7-11 14:19
一直就感觉场景恢复怪怪的,今天特意试验一下,果然不出所料
但是,不至于这么弱吧,这么简单的都恢复不了 HP那帮人也太面了把
肯定是那里设置有问题,还请各位把把脉
作者: lijinshui    时间: 2009-7-11 14:36
大家看了就给个说法呗,错的对的都好
我之前一直没有做异常系测试,现在开始着手,不太顺利
作者: lijinshui    时间: 2009-7-11 14:57
今天人气好底啊,在线等待呢
C:\Documents and Settings\ljs\Desktop\find qtp\e.bmp

[ 本帖最后由 lijinshui 于 2009-7-11 15:05 编辑 ]
作者: lijinshui    时间: 2009-7-11 16:18
本来想贴个图片出来给大家看的,居然也没有成功
作者: hsjzfling    时间: 2009-7-13 09:59
HP Mercury当然不会那么傻,我按照你的描述做了下,结果如图

[attach]53903[/attach]

确认下你是否将该场景加入到了当前脚本的场景资源中,并确认是否已启用
作者: hsjzfling    时间: 2009-7-13 10:02
再补一张图
[attach]53905[/attach]
作者: onlonely    时间: 2009-7-13 13:23
首先不要怀疑这个功能。
先确定自己确实会使用才是真,
场景恢复,情况下,没有满足条件的事情是会忽略的。

按照你描述的现象,就是场景恢复没有执行,
再看看场景恢复设置那里,因为我看你描述的,场景恢复文件好像没错
作者: liujinkui    时间: 2009-7-13 14:19
[attach]53918[/attach]

楼主,是这样的如果。看来我这也是一样。
为什么呢
作者: lijinshui    时间: 2009-7-14 09:01
标题: 回复 8# 的帖子
如果可能的话可不可以按照我描述帮我确认一下啊,我钢材又确认了一下还是不行,在RESOURCE面板上面也有该场景存在,也是启用状态的
作者: lijinshui    时间: 2009-7-14 09:49
场景恢复执行顺利的各位帮忙看看啊,拜托了
作者: shanxi    时间: 2009-7-14 09:58
http://knowledgeinbox.com/  

上有现成的。
作者: hsjzfling    时间: 2009-7-14 10:10
标题: 回复 11# 的帖子
第一先检查场景恢复文件的定义,看你的截图,多半没什么问题,其次就是检查设置,是否已将恢复文件应用到当前的脚本。
猜问题 有点困难,把你的脚本连同场景恢复文件一起打个包发上来,我帮你看下。
作者: lijinshui    时间: 2009-7-14 10:11
我看了一下好象是关于QTP的书籍的介绍,购买啥的啊
作者: lijinshui    时间: 2009-7-14 10:14
标题: 回复 12# 的帖子
太好了

[ 本帖最后由 lijinshui 于 2009-7-14 10:17 编辑 ]
作者: lijinshui    时间: 2009-7-14 10:20
其实我就是想试验一下场景恢复,用了一个NOTEPAD 故意没有把NOTEPAD 的FONT的对话框包含进来,然后执行到Window("Notepad").Dialog("Font").WinButton("OK").Click
的时候由于没有识别到Dialog("Font")而报错,然后就执行场景恢复,就是这么简单
作者: ziheng198688    时间: 2009-7-14 11:28
楼主应该把场景回复文件添加到File->Settings->Recovery下 而不是Resources下
作者: hsjzfling    时间: 2009-7-14 12:05
LZ请确认下你是否指定了关联正确的qrs,我看到你附件中的场景恢复定义如下
Trigger Event:
        Test run error
Recovery Operations:
        Close process
Post-Recovery Test Run Options:
        Restart current test run
作者: liujinkui    时间: 2009-7-14 14:20
lijinshui 我知道我的问题出在那了
对象的名字不统一
拷贝你的代码:Window("Notepad").Dialog("Font").WinButton("OK").Click
对象库我也是添加的"记录本",但是中文的
改成:Window("记事本").Dialog("字体").WinButton("确定").Click
就走Recovery Scanario
作者: lijinshui    时间: 2009-7-14 14:44
标题: 回复 9# 的帖子
注意了,这个对话框告诉你的是你这个对象在对象库里面找不到,而不是
在找不到这个对象,这是两个不同的概念。对象在对象库里面没有这种错误
场景恢复处理不了。

必须把 Window("Notepad").Dialog("Font").WinButton("OK") 加到对象库里面
然后不要开那个Font对话框。这样就OK了。
感谢各位大力支持 谢谢
作者: shuishixingyu    时间: 2009-12-7 17:51
果然如此
作者: lijinshui    时间: 2009-12-9 10:18
我现在没有用QTP自己带的错误恢复场景,我自己用脚本来判断并且处理异常的
作者: heqingbluesky    时间: 2009-12-10 16:58
VBS的Error Handling 还是比较弱的。




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2