51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2739|回复: 15
打印 上一主题 下一主题

[原创] 通过GetROProperty得到的属性都是空的,怎么办?

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2012-5-30 15:24:14 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我想得到一个新生成的order的order ID, 这个order ID是数字的,每次生成的都不一样,且通过spy发现类型是WebElement,  我通过GetROProperty得到innertext是空的,查看其他属性也是空的,如outertext, innerhtml, outerhtml, 这个问题应该很多人都遇到过吧?请高手指点一下,非常感谢!

xdf=Browser("ABC").Page("ABC").Frame("content").WebElement("174961").GetTOProperty("innertext")
MSGBOX "xdf="&xdf

174961是抓取对象的时候自动生成的对象名,其实就是该order的order ID,但结果得到innertext是空的
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2012-5-30 16:32:30 | 只看该作者
是不是对象的属性发生变化了呢导致对象定位不准确,尝试用描述性语言来写变化的对象呢
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2012-5-30 17:31:54 | 只看该作者
"xdf=Browser("ABC").Page("ABC").Frame("content").WebElement("174961").GetTOProperty("innertext")
MSGBOX "xdf="&xdf"  这个确定没写错么?你写的是GetTOProperty哦
改成GetROProperty("innertext")  试下
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2012-5-30 20:22:56 | 只看该作者
换描述试下吧 lz
对象库里面应该是没有页面动态生成的对象的.

现在我们项目对象库里面只有一个ie object
其他所有的都是+description 然后用 ojbIE.childobject(descrioption) 来获取的
回复 支持 反对

使用道具 举报

该用户从未签到

5#
发表于 2012-5-31 07:51:29 | 只看该作者
回复 1# gdutlzl

xdf=Browser("ABC").Page("ABC").Frame("content").WebElement("174961").Object.innertext
MSGBOX "xdf="&xdf
回复 支持 反对

使用道具 举报

该用户从未签到

6#
发表于 2012-5-31 10:04:04 | 只看该作者
GetTOProperty获取的是对象库中的对象属性。GetROProperty获取的是运行中对象的属性。如果属性动态变化,GetTOProperty无法获取正确属性值
回复 支持 反对

使用道具 举报

该用户从未签到

7#
发表于 2012-5-31 10:23:32 | 只看该作者
简单说一句你上级对象有问题应该是
回复 支持 反对

使用道具 举报

  • TA的每日心情
    无聊
    2020-12-8 11:20
  • 签到天数: 605 天

    连续签到: 1 天

    [LV.9]测试副司令

    8#
    发表于 2012-5-31 17:00:09 | 只看该作者
    这方法取的是对象库对象的属性啊?你去对象库看下有这个对象吗?看它的属性
    如果要拿实时的对象值还是应该用GetROProerty 吧。。。。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    9#
     楼主| 发表于 2012-5-31 18:18:05 | 只看该作者
    回复 3# woddebbmm


        不好意思,其实我是用RO的,只是用RO的时候返回空值,我就试了一下TO, copy代码的时候忘记改了
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    10#
     楼主| 发表于 2012-5-31 18:29:06 | 只看该作者
    这个问题我用description的方法解决了,但又遇到新的问题。
    我我直接录制回放,用description的方法能解决这个问题,但当把description方法用函数实现,且放在框架里面运行,结果还是得不到值。框架加载对象库时我只加载到Frame(也就是说我这个对象库文件只有三级,第一级是Browser,第二级是Page,第三级是Frame),且Browser("ABC").Page("ABC").Frame("content").Exist 是True

    我这个框架是用到哪个对象库的时候才加载哪个,是不是我这个对象库加载得太少了?我应该把Frame下面的全部对象都加载?这样的话也太多了,有button等很多对象
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    11#
     楼主| 发表于 2012-5-31 18:29:25 | 只看该作者
    谢谢各位的回答...
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    12#
    发表于 2012-6-1 10:07:27 | 只看该作者
    回复 10# gdutlzl

    回lz,frame也用 description的方式来获取.
    也就是说对象库里面,只有一个IE object,所有其他的东西都可以用description
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    无聊
    2020-12-8 11:20
  • 签到天数: 605 天

    连续签到: 1 天

    [LV.9]测试副司令

    13#
    发表于 2012-6-1 16:08:48 | 只看该作者
    Frame 下面不是还有好多对象吗?你用哪一个就加哪一个对象库啊。。。如果只要去识别frame 那它的子对象要不要都没问题啊
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    14#
    发表于 2012-6-11 17:19:33 | 只看该作者
    xdf=Browser("ABC").Page("ABC").Frame("content").WebElement("174961").GetROProperty("innertext",result)
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    15#
    发表于 2012-6-12 11:17:22 | 只看该作者
    你应该用GetROProperty.
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    16#
    发表于 2012-6-12 12:05:52 | 只看该作者
    这个问题我用description的方法解决了,但又遇到新的问题。
    我我直接录制回放,用description的方法能解决这个问题,但当把description方法用函数实现,且放在框架里面运行,结果还是得不到值。框架加载对象库时我只加载到Frame(也就是说我这个对象库文件只有三级,第一级是Browser,第二级是Page,第三级是Frame),且 Browser("ABC").Page("ABC").Frame("content").Exist 是True

    我这个框架是用到哪个对象库的时候才加载哪个,是不是我这个对象库加载得太少了?我应该把Frame下面的全部对象都加载?这样的话也太多了,有button等很多对象

    ==》这个问题我也遇到过,我是把对象库导入后调用函数时,无法识别,后来我是将对象库中的对象使用正则匹配了,范围弄广
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

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

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

    GMT+8, 2024-11-15 00:13 , Processed in 0.080895 second(s), 28 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

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