shoumuzhuang 发表于 2010-7-21 14:51:58

重复执行脚本报错

录制一个飞机订票系统的登录脚本,然后加了一个循环,想让它重复执行,执行第一遍时通过,第二遍时第一步登录界面就提示“Cannot identify the object "Login" (of class Dialog). Verify that this object's properties match an object currently displayed in your application.“
    我看了测试结果报告,第二次执行脚本的Login对象的描述中多了一个simclass = #32770,是不是因为多了个这个的原因才不能执行的,请问怎么解决这个问题,谢谢各位大侠,感激不尽:)

slook 发表于 2010-7-21 15:46:21

包括MESSAGEBOX在内的很多弹出式无标题对话框,都叫 #32770,好像没什么特征可以区别
如果用对象库录制,第一次是对的,第二次弹出的对话框跟第一个已经不是同一个了
可以用描述性编程来指认该对话框,并通过枚举特征控件来确认对话框内容

shoumuzhuang 发表于 2010-7-22 10:10:20

我是个新手加菜鸟,怎么用描述性编程来指认该对话框啊?就是那个飞机票预订系统的登录界面对话框,谢了:)

wenbingping 发表于 2010-7-22 17:37:44

可能是时间问题

有可能是时间问题,qtp识别对象需要一个过程,如果他还没有识别出来就去操作,也可能报错。

试试加上等待时间,在第二遍之前加下面的语句:
wait(2)

等待2秒的意思,可以根据需要更换括号里面的数字。

shoumuzhuang 发表于 2010-7-23 13:40:31

回复 4# 的帖子

我试了,加了wait(20),可第二遍还是运行不下去,额,我怎么这么悲剧啊.....

wenbingping 发表于 2010-7-26 10:08:05

可能对象定义属性不恰当

看看有没有动态的属性,就是每次运行属性值不一样的。
动态的属性要么去掉,要么掌握规则,用正则表达式。

建议你直接去掉那个多出来的属性simclass = #32770 看看吧。:)
页: [1]
查看完整版本: 重复执行脚本报错