延续精彩 发表于 2009-2-19 11:27:34

QTP自动将输入内容填写到地址栏的解决办法

我用QTP录制了一个BS脚本大概流程是这样的
1.打开浏览器
2.输入测试地址,打开登录页面
3.输入用户名密码,进入系统
4.系统中点击新建,弹出新建窗口(此窗口是弹出式的,并且弹出之后,系统后面的所有功能是被屏蔽的不能点击,只能在窗口中输入,但是可以进行浏览器功能的使用)
5.输入新建的信息,这里就出错了,他会把我输入的信息输入到浏览器的地址栏,因为之前的操作都是自动完成的,所以焦点仍然停留在浏览器的地址栏。(这点不知道为什么)
填写新建的代码如下,我设置的focus但是还是不成,难道和devicreplay对象有关系?
Set deviceReplay = CreateObject( "Mercury.DeviceReplay" )
Browser("*****").Page("*****").Frame("Frame_2").WebEdit("siteName").Object.focus
deviceReplay.SendString("自动化测试")

有人知道这个错误是什么原因吗?由于这个小问题,我很多测试脚本都不能直接用了。

jacksboy 发表于 2009-2-19 12:43:22

devicereplay对象中webedit对象获得焦点的语句不对

[ 本帖最后由 jacksboy 于 2009-2-19 12:54 编辑 ]

延续精彩 发表于 2009-2-20 09:47:27

原帖由 jacksboy 于 2009-2-19 12:43 发表 http://bbs.51testing.com/images/common/back.gif
devicereplay对象中webedit对象获得焦点的语句不对
那应该用什么语句的,请指教

jifeng 发表于 2009-2-20 10:10:55

弹出窗口QTP能正确识别吗?

morrith 发表于 2009-2-20 15:44:33

将 Browser("*****").Page("*****").Frame("Frame_2").WebEdit("siteName").Object.focus
此句改为
Browser("*****").Page("*****").Frame("Frame_2").Object.Focus
试试啊,说不定可以呢。。不行就把Frame("xxx")也去掉试试

morrith 发表于 2009-2-20 15:50:25

将 Browser("*****").Page("*****").Frame("Frame_2").WebEdit("siteName").Object.focus
此句改为
Browser("*****").Page("*****").Frame("Frame_2").Object.Focus
试试啊,说不定可以呢。。不行就把Frame("xxx")也去掉试试

你应该这么做,因为我刚才试过了。。原因嘛:你都还没有Focus到 Browser("*****").Page("*****").Frame("Frame_2")这个页面,就要寻找此页面中的WebEdit,应该会报错的吧。。

Browser("*****").Page("*****").Frame("Frame_2").Object.Focus
Browser("*****").Page("*****").Frame("Frame_2").WebEdit("siteName").Set "自动化测试"
这样应该就可以了吧。
页: [1]
查看完整版本: QTP自动将输入内容填写到地址栏的解决办法