51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2406|回复: 4
打印 上一主题 下一主题

[求助] 关于描述性编程的疑惑,望高手能予以解答

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2009-8-31 21:55:43 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
学习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
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

5#
 楼主| 发表于 2009-9-4 11:40:43 | 只看该作者
谢谢楼上各位,问题已经解决。是我把WinEid的属性搞错了
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2009-9-1 20:24:28 | 只看该作者
估计很可能是对象不唯一或者是密码文本框的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了。
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2009-9-1 13:42:51 | 只看该作者
是不是有多个WinEdit,你的描述不具备唯一性?
如果多个相同的控件可以添加index来 区别多个相同的控件。
回复 支持 反对

使用道具 举报

该用户从未签到

2#
发表于 2009-8-31 22:31:13 | 只看该作者
text属性唯一就在加属性吧,用spy查看一下
回复 支持 反对

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-11-26 02:23 , Processed in 0.098923 second(s), 28 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表