51Testing软件测试论坛

标题: 关于批运行中使用场景恢复碰到的问题 [打印本页]

作者: Jie    时间: 2007-6-29 13:35
标题: 关于批运行中使用场景恢复碰到的问题
在使用qtp的批运行工具Multi Test Manager来执行脚本时遇到了这样的问题:

我们的被测系统执行时偶尔会出现网页打不开等异常情况,但是很多时候重新登录进去就可以正常打开了,所以我们对脚本设置了如下的场景恢复文件:
当找不到对象时触发该场景恢复文件,该文件的作用是先执行一个调用登录脚本的函数,然后重新启动当前测试运行。
我们将此恢复场景文件添加到了除登录脚本之外的每个脚本中。
使用情况如下:
当单个运行脚本时,遇到找不到对象时,就会按设想的那样,首先调用登录脚本执行,然后再重新执行本脚本。
而使用Multi Test Manager来批量执行时,遇到找不到对象这个问题时,也会调用登录脚本执行,但执行完登录脚本后不再执行本脚本,而是转入执行批运行脚本列表中的下一个脚本。从而使恢复场景文件在此变得没有意义。
希望大家能给我一些建议和方法,或者在批运行过程中有什么好的克服异常情况的经验也希望能拿出来在此分享下。
作者: Jie    时间: 2007-7-1 14:52
怎么没人回贴呀?是不是哪里没说清楚?
作者: wtucel    时间: 2007-7-1 20:35
.......请教一下,怎么做到当QTP找不到对象时调用另一个脚本的?
作者: Jie    时间: 2007-7-2 13:20
就是做一个当找不到对象时触发的场景恢复文件,里面调用一个函数,该函数用于执行登录脚本,如
Function RecoveryFunctionLogin(Object, Method, Arguments, retVal)
RunAction "登陆 [登陆]", oneIteration
End Function
作者: winfood    时间: 2007-7-2 13:44
受项目条件限制,在设计实现测试脚本批量运行的时候我用的是QTP9.0的批量运行工具Test batch runner,和QTP8.*的Multi Test Manager类似。因为我们项目没有用到场景恢复,所以没有碰到LZ那样的问题。
但是在批量运行的时候我们遇到了其他问题,个人感觉这个工具不太可靠。如果有时间,LZ可以自己动手写VBScript脚本来自动化调用QTP运行。这样也许可以避免恢复场景被忽略的问题。
作者: Jie    时间: 2007-7-2 23:22
QTP9.0的批量运行工具Test batch runner  也会出现同样的问题,这个我有试过的。
用Multi Test Manager执行还有个好处就是可以生成汇总的报告,这个是我选用它的主要原因之一。不知道winfood在批量运行中还碰到了些什么问题,不妨说出来大家
探讨探讨。
作者: wtucel    时间: 2007-7-2 23:30
原帖由 Jie 于 2007-7-2 13:20 发表
就是做一个当找不到对象时触发的场景恢复文件,里面调用一个函数,该函数用于执行登录脚本,如
Function RecoveryFunctionLogin(Object, Method, Arguments, retVal)
RunAction "登陆 [登陆]", oneIteration
...


请问"当找不到对象时,调用某函数",这个怎么写?

IF Object.NotFound Then

      RecoveryFunctionLogin(XXXXXX)

End IF

????
作者: Jie    时间: 2007-7-2 23:40
wtucel你有没有用过场景恢复?你做一个试试,触发条件选择找不到对象时,恢复的方法选择使用函数调用。将该恢复场景跟脚本关联,这样,当qtp运行时,如果找不到对象,就会触发恢复场景。
作者: winfood    时间: 2007-7-2 23:43
原帖由 wtucel 于 2007-7-2 23:30 发表


请问"当找不到对象时,调用某函数",这个怎么写?

IF Object.NotFound Then

      RecoveryFunctionLogin(XXXXXX)

End IF

????

场景恢复是QTP提供的一种机制,恢复的时候不完全是在脚本里面体现的。
基本原理就是:
你指定一种错误,并且制定出现这种错误出现后应该以什么方式应对;
当测试脚本运行过程中出现这类错误的时候,QTP就自动调用你指定的应对方式;

每次你定义一个场景恢复QTP都将生成相应的文件,在脚本中应用的时候可以像外部函数、共享对象仓库一样的附加到测试脚本中。
作者: winfood    时间: 2007-7-2 23:51
原帖由 Jie 于 2007-7-2 23:22 发表
QTP9.0的批量运行工具Test batch runner  也会出现同样的问题,这个我有试过的。
用Multi Test Manager执行还有个好处就是可以生成汇总的报告,这个是我选用它的主要原因之一。不知道winfood在批量运行中还碰到 ...

Sorry,我碰到的那个问题在半年前了。当时我用Test Batch Runner批量运行一组测试脚本,其中有几个脚本总是不执行。当批量运行执行到那个几个脚本时,Test Batch Runner自动停止,而且不报告任何错误。最后我也没有找到原因,只好不了了之了。

没有用过Multi Test Manager,不过能把批量结果汇总到一起听起来还是不错的。QTP如果没有其他工具支持,Test Report能力太有限了。
作者: 南极    时间: 2007-7-3 10:26
sdlkfj2
作者: danmy    时间: 2007-7-27 17:25
批量运行时用automation自己写运行脚本
作者: 追逐日光    时间: 2009-4-16 11:12
怎么我的Test Batch runner工具会报错呢




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