|
下面是对qtp自带的订票程序的登陆操作
SystemUtil.Run "D:\Program Files\HP\QuickTest Professional\samples\flight\app\flight4a.exe"
Dialog("text:=Login","index:=1").WinEdit("attached text:=Agent Name:").Set "admin"
Dialog("text:=Login","index:=1").WinEdit("attached text:=Password:").SetSecure "mercury"
Dialog("text:=Login","index:=1").WinButton("text:=OK").Click
如果当前没有打开登陆窗口,上面的代码运行自然是没问题。但如果已经打开了一个登陆窗口(假设为窗口一),再运行就会出现登陆窗口二,接下来的运行结果是这样的:
用户名输入到窗口一中,密码输入到窗口二中,单击又作用在了窗口一的OK按钮上,所以登陆不成功。为什么根据index值得到的窗口总是在变化呢?我之前对index的理解是按照对象出现的顺序进行编号,但现在看来错了。那index值是怎么指定的?
我翻到了这个帖子
http://bbs.51testing.com/viewthr ... p;extra=&page=1
楼主说,QTP对对象的INDEX的标示,会因为对象的变动而变动着。这种变动指的是什么?输入了用户名也会引起Login对象的变化吗 |
|