51Testing软件测试论坛
标题:
关于描述性编程的疑惑,望高手能予以解答
[打印本页]
作者:
xhhuang1618
时间:
2009-8-31 21:55
标题:
关于描述性编程的疑惑,望高手能予以解答
学习QTP已有一段时间了,但始终沉溺在录制脚本和修改脚步的快感中.今天突然在想,如果我的整个QTP脚本都通过描述性编程来做,是否真的可行?带着这样的一个问题,我写了下面一段脚本,但不幸的是脚本没有想我预期的那样执行,请各位帮我解决一下我的问题.谢谢!
'这是一个QTP自带的示例程序
Dim var_LoginName,var_UserName,var_PassWord,var_Button
'分别定义了窗口,Agent Name,PassWord三个属性
var_LoginName = "Login"
var_UserName= "Agent Name"
var_PassWord = "Password"
var_Button = "OK"
'激活窗口
Dialog("text:="&var_LoginName).Activate
'在Agent Name和PassWord文本框中输入值,但QTP并不识别WinEdit,不知为什么??
Dialog("text:="&var_LoginName).WinEdit("text:="&var_UserName).type "mercury"
Dialog("text:="&var_LoginName).WinEdit("text:="&var_PassWord).type"mercury"
'点击Button按钮
Dialog("text:="&var_LoginName).WinButton("text:="&var_Button).Click
作者:
ls_721521
时间:
2009-8-31 22:31
text属性唯一就在加属性吧,用spy查看一下
作者:
kings727
时间:
2009-9-1 13:42
是不是有多个WinEdit,你的描述不具备唯一性?
如果多个相同的控件可以添加index来 区别多个相同的控件。
作者:
shotstar
时间:
2009-9-1 20:24
估计很可能是对象不唯一或者是密码文本框的text属性不是Password。如果用spy查看了发现text属性是Password,那么给你个方法看看
Set oDesc=Description.Create()
oDesc("text")="Password"
oDesc("micclass")="WinEdit"
Set Lists=Dialog("text:="&var_LoginName).ChildObjects(oDesc)
num=Lists.count
msgbox num
就可以知道这个Dialog下面有多少个text是Password的WinEdit了。
作者:
xhhuang1618
时间:
2009-9-4 11:40
谢谢楼上各位,问题已经解决。是我把WinEid的属性搞错了
欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/)
Powered by Discuz! X3.2