51Testing软件测试论坛

标题: 为什么QTP运行的结果和手动的不一样 [打印本页]

作者: 1316016    时间: 2010-9-10 18:33
标题: 为什么QTP运行的结果和手动的不一样
大家是否有遇到这样的情况,用手动操作得到结果A, 但是用QTP运行结果就不同呢?

具体点,点击某个Button, 手动操作会跳转/弹出一个新的页面,但是QTP对同样的对象操作,不会跳转/弹出也面,请问是什么原因呢?
作者: TIB    时间: 2010-9-10 21:20
确实会有这样的情况,表明QTP并没有真正点击该按钮,可能需要对这个对象进行特殊处理
作者: blizzardlyk    时间: 2010-9-11 08:05
有时候页面上的Button,存在嵌套控件,视觉上是看不出来的。建议用SPY察看一下。
并且,如果是WebElement的话,可以尝试用Fireevent 来操作。 QTP回放不成功,说明单纯的Click并没有激活控件对应的事件。因为QTP封装的Click方法,并不是单纯的点击鼠标,而有可能直接调用对象的接口。
作者: sterson    时间: 2010-9-12 11:58
呵,可能是该控件不是普通的html控件,QTP虽然可以录制动作,但无法触发事件
所以可以尝试手工添加触发事件来解决,或给动作写上参数,比如右击等
作者: 杨柳    时间: 2010-9-12 22:13
标题: 回复 1# 的帖子
会有这样的情况
这个时候就要用到:步骤添加器,重新添加漏了的操作或步骤
作者: lyscser    时间: 2010-9-14 08:15
QTP操作页面是基于事物消息的,并非单纯的keyboard或者mouse操作
或者你可以直接理解为它调用操作系统UI封装的方法去对对象进行操作的,如果碰到QTP回放和手工不一样的时候:
1、要求开发改程序,因为可能存在安全隐患
2、使用键盘模拟去操作,当然键盘模拟之前必须捕获焦点:用appactivate方法,用法去百度知道吧,地球人都会
作者: acj14591    时间: 2010-9-14 09:47
标题: QTP的初级问题
我在录制飞机订票实例程序,在输入用户的时候,每输入一段字符就出现一个Type,具体代码如下:
Dialog("Login").WinEdit("Agent Name:").Type "m"
Dialog("Login").WinEdit("Agent Name:").Type "er"
Dialog("Login").WinEdit("Agent Name:").Set "mer"
Dialog("Login").WinEdit("Agent Name:").Set "merc"
Dialog("Login").WinEdit("Agent Name:").Type "u"
Dialog("Login").WinEdit("Agent Name:").Set "mercu"
Dialog("Login").WinEdit("Agent Name:").Type "ry"
Dialog("Login").WinEdit("Agent Name:").Set "mercury"

正常情况应该只有最后一句:Dialog("Login").WinEdit("Agent Name:").Set "mercury"的
有人知道这是什么原因吗?是不是我的QTP哪里配置出问题了!
作者: 1316016    时间: 2010-12-21 14:44
会有这样的情况
这个时候就要用到:步骤添加器,重新添加漏了的操作或步骤
杨柳 发表于 2010-9-12 22:13



    步骤添加器?




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