51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

查看: 9807|回复: 19
打印 上一主题 下一主题

[讨论] 关于GetTOProperty和GetROProperty

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2007-1-9 10:25:40 | 显示全部楼层 回帖奖励 |倒序浏览 |阅读模式
刚试了一个脚本是个自带的例子.脚本是:
Dim  getusername
SystemUtil.Run "C:\Program Files\Mercury Interactive\QuickTest Professional\samples\flight\app\flight4a.exe","","C:\Program Files\Mercury Interactive\QuickTest Professional\samples\flight\app\","open"
Dialog("Login").WinEdit("Agent Name:").Set DataTable("username", dtGlobalSheet)
getusername=Dialog("Login").WinEdit("Agent Name:").GetTOProperty("text")
msgbox(getusername)
Dialog("Login").WinEdit("Password:").SetSecure DataTable("password", dtGlobalSheet)
Dialog("Login").VirtualObject("object").Click 139,169

在对象库中:我将Agent name 这个对象的属性text 设置为1,如果用getusername=Dialog("Login").WinEdit("Agent Name:").GetTOProperty("text"),此时msgbox(getusername)返回为1.但如果我用的是getusername=Dialog("Login").WinEdit("Agent Name:").GetROProperty("text"),此时运行到登陆名的时候就运行不下去,这是为什么?对了,还有就是我在这个时候把Text参数化为username,目的就是得到参数化后运行时的登陆名,但是不知道怎么了运行不下去了?GetROProperty和GetTOProperty在用法上有什么不同吗?
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
 楼主| 发表于 2007-1-9 11:21:11 | 显示全部楼层
这两个的区别我明白咯。但在用的时候为什么会出现我说描述的问题呢?用获得测试对象的时候是没问题的,但获得运行时对象却运行不下去呢?
回复 支持 反对

使用道具 举报

该用户从未签到

3#
 楼主| 发表于 2007-1-9 13:38:17 | 显示全部楼层
可能我在理解的时候有问题。现在想问一下这个问题:对象库中有属性和值。对于这个例子中的Agent Name:这个对象他一个属性为nativeclass 值为Edit.他是不是一个可编辑的属性。也就是说我设置为:Dialog("Login").WinEdit("Agent Name:").Set DataTable("username", dtGlobalSheet)那他的值是不是就变为DataTable("username", dtGlobalSheet)中设置的值。我的目的也是得到这个值。但我用Dialog("Login").WinEdit("Agent Name:").GetROProperty("nativeclass")得到的始终都是Edit. 我的理解是不是有问题??
回复 支持 反对

使用道具 举报

该用户从未签到

4#
 楼主| 发表于 2007-1-9 13:57:53 | 显示全部楼层
非常感谢。恩果然是没找对属性。对了,那nativeclass 属性后面的属性值Edit是不是表示可编辑的,attached text这个属性后面的属性值Agent Name:是不是就是表示他的这个对象的名字?
回复 支持 反对

使用道具 举报

该用户从未签到

5#
 楼主| 发表于 2007-1-9 14:55:44 | 显示全部楼层
多谢。还有一个问题:
dim  a
Dim b
SystemUtil.Run "C:\Program Files\Mercury Interactive\QuickTest Professional\samples\flight\app\flight4a.exe","","C:\Program Files\Mercury Interactive\QuickTest Professional\samples\flight\app\","open"
Dialog("Login").WinEdit("Agent Name:").Set "mercury"
Dialog("Login").WinEdit("Password:").SetSecure "45a33043f58a82a4552fb2c7368281775b80644a"
a=Dialog("Login").WinEdit("Agent Name:").GetROProperty("text")
msgbox(a)
b=Dialog("Login").WinEdit("Agent Name:").SetTOProperty ("text" ,"1")
msgbox(text)
Dialog("Login").VirtualObject("object").Click 115,168
Window("Flight Reservation").Close
按我的想法此时B返回的应该是1但为什么返回的是空?
回复 支持 反对

使用道具 举报

该用户从未签到

6#
 楼主| 发表于 2007-1-9 16:00:03 | 显示全部楼层
恩,我Copy错了,但用msgbox(b)返回的还是空的?知道为什么吗?
回复 支持 反对

使用道具 举报

该用户从未签到

7#
 楼主| 发表于 2007-1-9 17:13:28 | 显示全部楼层
非常感谢你们两位让我学到不少.
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

GMT+8, 2024-5-6 08:03 , Processed in 0.075851 second(s), 27 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

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