liuliu022004 发表于 2010-5-14 14:55:16

GetROProperty 取不到属性值是为什么?

我想得到运行时urlname的sourceindex属性的值,但是脚本运行后sourceindex总是空。不晓得为什么。(用spy看,sourceindex值能看到,有值)
sourceindex = Browser("XXXXX").Page("XXXXX").Frame("RightFrame").Link("urlname").GetROProperty("sourceinde")
但是取text属性,取值正常。
name1 = Browser("XXXXX").Page("XXXXX").Frame("RightFrame").Link("urlname").GetROProperty("text")
不知道和什么有关,请大家帮忙看看。

skyzhu 发表于 2010-5-14 15:25:03

那肯定就是没有这个属性了
到底是sourceinde 还是 sourceindex

liuliu022004 发表于 2010-5-14 15:29:42

sourceindex
spy的时候看是有的 页面我都没有关 属性值肯定是有的啊

skyzhu 发表于 2010-5-14 15:59:55

那你看到的应该是 runtime object Property,不是test object Property
取runtime 属性应该是
Browser("XXXXX").Page("XXXXX").Frame("RightFrame").Link("urlname").Object.GetROProperty("sourceindex")
或者
Browser("XXXXX").Page("XXXXX").Frame("RightFrame").Link("urlname").GetROProperty("attribute/sourceindex")

[ 本帖最后由 skyzhu 于 2010-5-14 16:34 编辑 ]

liuliu022004 发表于 2010-5-14 16:15:16

原帖由 skyzhu 于 2010-5-14 15:59 发表 http://bbs.51testing.com/images/common/back.gif
那你看到的应该是 runtime object Property,不是test object Property
取runtime 属性应该是
Browser("XXXXX").Page("XXXXX").Frame("RightFrame").Link("urlname").Object.GetROProperty("sourceindex")
或者
...

我就看的runtime property啊这句话应该没问题啊sourceindex就是它的属性
Browser("XXXXX").Page("XXXXX").Frame("RightFrame").Link("urlname").GetROProperty("sourceindex")

spy看如下和属性名大小写无关,换大写也不行

skyzhu 发表于 2010-5-14 16:30:14

run-time object Property 不是像你这样取的
你这样取的是 test object Property
试下上面说的就知道了,仔细看,不一样的

liuliu022004 发表于 2010-5-14 16:44:04

原帖由 skyzhu 于 2010-5-14 16:30 发表 http://bbs.51testing.com/images/common/back.gif
run-time object Property 不是像你这样取的
你这样取的是 test object Property
试下上面说的就知道了,仔细看,不一样的


Browser("XXXXX").Page("XXXXX").Frame("RightFrame").Link("urlname").GetROProperty("attribute/sourceindex")
恩 加了attribute就得到了。谢谢。

不过我又有点不明白了GetROProperty不是取runtime属性的吗?
你的意思,它不就成了
Browser("XXXXX").Page("XXXXX").Frame("RightFrame").Link("urlname").GetROProperty("sourceindex") 等于
Browser("XXXXX").Page("XXXXX").Frame("RightFrame").Link("urlname").GetTOProperty("sourceindex")?

skyzhu 发表于 2010-5-14 16:57:44

GetROProperty
Returns the current value of the test object property from the object in the application.

GetTOProperty
Returns the value of the specified property from the test object description.

都和run-time属性没有关系的,看看资料吧

liuliu022004 发表于 2010-5-14 17:22:47

“关键在于RO和TO,R,就是Runtime,T就是Testtime,O就是Object。因此顾名思义,RO就是在测试执行时的对象,TO就是录制/ 编写测试时的对象。是同一个类在不同的时间生成的不同的实例,一般来说TO是静态的,而RO是动态的(每次执行测试都会生成新的实例)。”

因为想用,一直看帖子,所以才这么认为的啊。我认为,ro就是运行过程中对象真正的属性值,to是对象库中属性的值啊。

现在看,我应该是忽略了runtime object和runtime property的概念。

非常感谢skyzhu:handshake

(习惯用图给自己做小结,既然得到别人的帮忙,所以小结也放这,希望对大家也有帮助,别犯我的错误)

souchy 发表于 2010-5-18 14:29:24

虽然没有搞明白具体原理,但起码知道怎么回事了。学到了!!!

caodongjian 发表于 2011-4-5 11:48:38

学习了。我也遇到这个问题。。什么感谢
页: [1]
查看完整版本: GetROProperty 取不到属性值是为什么?