51Testing软件测试论坛

标题: 帮帮忙,请问在回放脚本时,怎样控制与测试的应用程序同步 [打印本页]

作者: SMILETEST    时间: 2006-2-9 20:15
标题: 帮帮忙,请问在回放脚本时,怎样控制与测试的应用程序同步
在回放脚本时,发现脚本执行得太快,测试的应用程序有时难同步。导致达到回放的效果。请问回放脚本时,怎样控制与测试的应用程序同步

[ 本帖最后由 SMILETEST 于 2006-2-10 09:42 编辑 ]
作者: baitest    时间: 2006-2-9 20:51
可以,加入延时语句就行!
作者: ilovejolly    时间: 2006-2-9 20:53
可以在设置里修改执行命令间隔的时间,也可以手动在需要延迟的地方加DelayFor,如DelayFor 2000是延迟2s。区别就是设置对所有命令起作用
作者: SMILETEST    时间: 2006-2-10 09:35
测试人员或许注意到对于所测试的应用程序测试脚本回放得太快。他可能打算放慢它几次直到测试脚本执行和测试的应用程序相同步。这个技巧可以会造成相反的结果-甚至失败-如果在测试执行时,由于外部的因素(例如网络有延迟或系统维护)导致应用程序运行比新引入的等待时间更慢。在这种情况下,每次测试人员将不得不不断的猜测一个新的合理的等待时间。用等待时间放慢脚本不是十分科学的,并且对于创建强健的,在没有用户干涉情况下能够成功运行的自动化测试脚本没有什么帮助。
如果有可能的化,测试人员应该避免引入人为的等待时间或任意的sleep变量以使测试脚本和应用程序同步。
"While"语句或嵌套的"loops"语句是用于同步需要同步点的测试脚本且不管所测试程序的响应时间都可以成功回放的正确的技术。在测试脚本种插入嵌套的loops或“while”语句也可以减少在测试脚本回放时用户的干涉。例如,我插入"while"语句在录制好的测试脚本里,不断按Enter键直到创建了一个计划中的协议,不管所测试应用程序要花多长时间产生协议。测试脚本不依赖所测试应用程序的响应时间工作。
作者: SMILETEST    时间: 2006-2-10 09:36
上面是我看到的相关资料。但我不明白是怎么实现的。哪位大侠能告诉我是怎么做的吗?
作者: SMILETEST    时间: 2006-2-10 09:48
谢谢大家这么快回复呀。真是太感谢了
作者: SMILETEST    时间: 2006-2-10 15:12
我举例说说我现在遇到的问题吧:
InputKeys "1 21{ENTER}1 19{ENTER}1 19{ENTER} 1 5{ENTER}1 21{ENTER}1 21"

这个语句中,操作不复杂,但被测程序也还来不及响应。
我想如果说要加延时的话,在每个{ENTER}后都需要加,我试着加DELAY,可是DELAY语句不能加在InputKeys“ ”里。那么就只能这样了:
InputKeys "1 21{ENTER}"
  DelayFor ()
InputKeys "1 19{ENTER}"
  DelayFor ()

这样一来,手动改脚本花费时间太长了。
所以我想还有一办法:就是我下面说的想法

InputKeys "1 21{ENTER}1 19{ENTER}1 19{ENTER} 1 5{ENTER}1 21{ENTER}1 21"
上面这个语句是ROBOT自动录制这么长的。我想可不可以在哪里设置一下,让ROBOT自动录制短一点,
即录制成:
InputKeys "1 21{ENTER}"
InputKeys "1 19{ENTER}"......这样我也可以在InputKeys批量前加DELAY语句了,就很快了

大家知道是在哪里设置吗?帮帮忙呀
作者: youyun    时间: 2006-2-10 21:52
来不及响应是什么意思?如果输入1 21{ENTER}后程序有了变换,可以加一个验证点,这样回放时会等待程序和验证点相一致后再会继续进行
作者: SMILETEST    时间: 2006-2-12 23:31
youyun ,请问验证点是在哪里加?我在使用手册上没找到。谢了
作者: youyun    时间: 2006-2-13 08:32
录制时最右边那个按钮,详细见
http://bbs.51testing.com/viewthr ... &extra=page%3D1
作者: SMILETEST    时间: 2006-2-13 09:28
youyun , 我的QQ494572141,聊聊吧。帮帮忙
验证点的思想是通过比较控件的基准值与回放脚本时的值来判断程序是否按照预期的设想在执行.
我现在不是想控制这个。
我现在遇到的问题就是:脚本回放一个操作A后,被测试的应用程序还未执行完操作A,脚本就回放了下一个操作B,导致操作A并未执行完。这样一来,很多操作应用程序并未执行。
作者: SMILETEST    时间: 2006-2-14 17:32
我暂时就这么处理了:修改脚本,加延时
作者: youyun    时间: 2006-2-14 21:09
验证点是那个意思
我说的只是利用验证点可以自动等待你要测的对象出现的一个特性,不是以验证为目的,这样你就不用手动加延时了

其实我觉得也还是手工加延时要快一点,呵呵




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