51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 3571|回复: 12
打印 上一主题 下一主题

[原创] 关于WebCheckBox的set的问题

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2006-2-17 14:29:51 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
Browser("**").Page("***").Frame("CENTER_2").WebCheckBox("ckSelect").SetTOProperty"index",5
Browser("**").Page("***").Frame("CENTER_2").WebCheckBox("ckSelect").Set "ON"

Browser("!!").Page("!!!").WebCheckBox("btnSelected").SetTOProperty"index",5
'Browser("!!").Page("!!!").WebCheckBox("btnSelected").Set "ON"
注:ckSelect和btnSelected 录制时它们的属性index均为0
运行脚本,前两句执行的结果不成功,选中的WebCheckBox的index仍为0(即列表的第一行),而后两句却成功,选中的index为5(即列表的第6行),请问知道这是为什么吗?如何才能解决前两句的问题?

[ 本帖最后由 yuner 于 2006-2-17 14:31 编辑 ]
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

13#
 楼主| 发表于 2006-2-22 15:36:11 | 只看该作者
是啊,我的WebCheckBox("ckSelect") 就是没有SetROProperty方法,参见附件,难道你们的有?

[ 本帖最后由 yuner 于 2006-2-22 15:38 编辑 ]

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?(注-册)加入51Testing

x
回复 支持 反对

使用道具 举报

该用户从未签到

12#
发表于 2006-2-22 13:50:28 | 只看该作者
为什么没有SetROProperty呢?
回复 支持 反对

使用道具 举报

该用户从未签到

11#
 楼主| 发表于 2006-2-22 13:43:30 | 只看该作者
呵呵!问题终于解决了,原来在object properties 中有个enable smart identification选项,把它前面的勾去掉,这样就可以只用index去识别对象了 ^_^
回复 支持 反对

使用道具 举报

该用户从未签到

10#
 楼主| 发表于 2006-2-22 13:18:36 | 只看该作者
WebCheckBox没有setRoProperty方法啊!只有GetRoProperty方法,我要用的是set方法^_^   另外,我对不同列表中的webcheckbox进行了测试,发现有些对象是通过index属性就可以识别,而有些却要用value属性来识别,如果value属性的值并没有规律,其他属性的值也没有规律,那么该怎么办呢?怎样才能使class为WebCheckBox的对象只用index来识别呢?

[ 本帖最后由 yuner 于 2006-2-22 13:20 编辑 ]
回复 支持 反对

使用道具 举报

该用户从未签到

9#
发表于 2006-2-22 12:04:15 | 只看该作者

[转]GetROProperty,GetTOProperties,GetTOProperty的区别?

GetROProperty,GetTOProperties,GetTOProperty的区别?
   GetToProperty:Returns the value of the specified property from the test object description.
   GetTOProperties:Returns the collection of properties and values used to identify the object.
   GetROProperty:Returns the current value of the test object property from the object in the application.
  举个例子:
    假设在库中有一个对象"窗口A",用于识别该对象的属性有2个,一个属性是"text",在库中记录的值是"QQQQ".另一个属性是"name",记录的值是"MM"
在实际运行脚本时属性"text"的值是"PPPP"而不是"QQQQ"
那么:
Window("窗口A").GetToProperty("text")返回的是:"QQQQ"
Window("窗口A").GetRoProperty("text")返回的是:"PPPP"
Window("窗口A").GetToProperties("text")返回的是用于识别"窗口A"的两个属性和值的集合
关键在于RO和TO,R,就是Runtime,T就是Testtime,O就是Object。因此顾名思义,RO就是在测试执行时的对象,TO就是录制/编写测试时的对象。是同一个类在不同的时间生成的不同的实例,一般来说TO是静态的,而RO是动态的(每次执行测试都会生成新的实例)。
回复 支持 反对

使用道具 举报

该用户从未签到

8#
发表于 2006-2-22 12:01:48 | 只看该作者

[转]GetROProperty,GetTOProperties,GetTOProperty的区别?

GetROProperty,GetTOProperties,GetTOProperty的区别?
   GetToProperty:Returns the value of the specified property from the test object description.
   GetTOProperties:Returns the collection of properties and values used to identify the object.
   GetROProperty:Returns the current value of the test object property from the object in the application.
  举个例子:
    假设在库中有一个对象"窗口A",用于识别该对象的属性有2个,一个属性是"text",在库中记录的值是"QQQQ".另一个属性是"name",记录的值是"MM"
在实际运行脚本时属性"text"的值是"PPPP"而不是"QQQQ"
那么:
Window("窗口A").GetToProperty("text")返回的是:"QQQQ"
Window("窗口A").GetRoProperty("text")返回的是:"PPPP"
Window("窗口A").GetToProperties("text")返回的是用于识别"窗口A"的两个属性和值的集合
关键在于RO和TO,R,就是Runtime,T就是Testtime,O就是Object。因此顾名思义,RO就是在测试执行时的对象,TO就是录制/编写测试时的对象。是同一个类在不同的时间生成的不同的实例,一般来说TO是静态的,而RO是动态的(每次执行测试都会生成新的实例)。
回复 支持 反对

使用道具 举报

该用户从未签到

7#
发表于 2006-2-21 13:58:30 | 只看该作者
如果是动态生成的话,使用setRoProperty方法
回复 支持 反对

使用道具 举报

该用户从未签到

6#
 楼主| 发表于 2006-2-20 13:55:52 | 只看该作者
是name为ckSelect对象,我查看Browser("**").Page("***").Frame("CENTER_2").WebCheckBox("ckSelect").Set "ON"
这句话对应的ckSelect的属性(index和value)的值并没有改变为我用SetTOProperty"index",5和SetTOProperty"value",3633 所设定的值,index和value的值仍为我录制时那个对象的值。但是我执行脚本运行后,执行结果是正确的,选中的就是value为3633的值。why?这个警告信息可以忽略吧?

[ 本帖最后由 yuner 于 2006-2-20 13:59 编辑 ]
回复 支持 反对

使用道具 举报

该用户从未签到

5#
发表于 2006-2-20 13:23:32 | 只看该作者
“The object was not found using the test object description. Check the object's properties.”
这句话说的是哪个对象没有找到??是"value",3633的这个对象??
回复 支持 反对

使用道具 举报

该用户从未签到

4#
 楼主| 发表于 2006-2-20 09:49:13 | 只看该作者
请问Horus_Ra ,你说的“  找到“ckSelect”……    ”,后面的......是什么呢?
我在前两句中间增加了一句Browser("**").Page("***").Frame("CENTER_2").WebCheckBox("ckSelect").SetTOProperty"value",3633 (注:value值是动态变化的)   此时可以成功选中第四行所在的webcheckbox 。尽管我已经add object,但是在test results中仍然会有警告信息:The object was not found using the test object description. Check the object's properties.
请问除了这种方法有没有更好的方法呢?

[ 本帖最后由 yuner 于 2006-2-20 10:38 编辑 ]
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2006-2-20 09:20:28 | 只看该作者
在对象库里,你能找到“ckSelect”……
回复 支持 反对

使用道具 举报

该用户从未签到

2#
 楼主| 发表于 2006-2-17 16:35:31 | 只看该作者
我查了一下,原来前两句中的WebCheckBox("ckSelect)所在的行是动态生成的,如何选中自己所要选择的列表中动态生成的webcheckbox的方法正在思考中.....,有哪位知道解决办法的请告知,谢谢!
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

GMT+8, 2024-11-16 06:15 , Processed in 0.072703 second(s), 29 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

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