51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 3392|回复: 17
打印 上一主题 下一主题

[原创] QTP怎么获取页面上属性的动态值

[复制链接]
  • TA的每日心情
    奋斗
    2015-4-17 14:03
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    跳转到指定楼层
    1#
    发表于 2012-8-28 09:55:22 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    Browser("xxx").Page("xxx").WebElement("99,990").GetROProperty("innertext")
    要获取99,990这个值,但是这个值会变化,那怎么办呢
    分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

    该用户从未签到

    2#
    发表于 2012-8-28 11:04:56 | 只看该作者
    对该WebElement对象的相关识别属性使用正则表达式来匹配下可能变化的范围
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    3#
    发表于 2012-8-28 15:42:44 | 只看该作者
    回复 1# jix11

    当前对象Browser("xxx").Page("xxx").WebElement("99,990")肯定存在唯一标识属性。把innerText属性从对象库的webElement的对象中踢出去,再加一个唯一标识属性。这样就可以获取这个字段的值了。
    注意,对象一定要唯一哦。对象属性、对象位置(父对象、子对象的相对位置)肯定可以唯一确定这个对象,否则程序自己都无法识别,还怎么显示值啊
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    4#
    发表于 2012-8-29 11:44:45 | 只看该作者
    innertext对应的是99990这个变换的属性吗,
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2015-4-17 14:03
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    5#
     楼主| 发表于 2012-8-30 15:46:43 | 只看该作者
    回复 3# xjwldlover


        我用spy查了下,只有一下只能用坐标唯一标识,因为99990这个值是变动的
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2015-4-17 14:03
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    6#
     楼主| 发表于 2012-8-30 15:47:49 | 只看该作者
    回复 4# louqqson008


        是的,99990是变动的
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    7#
    发表于 2012-8-30 15:59:38 | 只看该作者
    你把对 WebElement("99,990") 的spy截图发上来。同时右键点“查看源文件”,把WebElement("99,990") 的对应标签信息贴出来,比如
    “<div id="avatarfeed"><span id="threadsortswait"></span></div>”。
    肯定可以唯一确定这个对象的。
    如果邻居家长让你帮她去学校接孩子,他自己都不知道孩子叫什么长什么样,怎么可能告诉你接对人呢。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2015-4-17 14:03
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    8#
     楼主| 发表于 2012-8-30 16:26:15 | 只看该作者
    回复 7# xjwldlover不知道你说的是不是这个,我刚开始用QTP,不是很清楚

    本帖子中包含更多资源

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

    x
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    9#
    发表于 2012-8-30 16:27:19 | 只看该作者
    用name=balance识别,getroproperty获得innertext就行了
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2015-4-17 14:03
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    10#
     楼主| 发表于 2012-8-30 16:31:28 | 只看该作者
    回复 9# 云层


        值是变的,值一变就报错了
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    11#
    发表于 2012-8-30 16:41:10 | 只看该作者
    本帖最后由 xjwldlover 于 2012-8-30 16:48 编辑

    试试云层说的。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2015-4-17 14:03
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    12#
     楼主| 发表于 2012-8-30 16:55:18 | 只看该作者
    回复 11# xjwldlover


        麻烦解释详细一点吧,不明白怎么用,只知道获取属性值,在属性里面没找到这一项
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2015-4-17 14:03
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    13#
     楼主| 发表于 2012-8-30 17:51:38 | 只看该作者
    不会吧,没有人帮我解释吗
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    14#
    发表于 2012-8-30 17:52:05 | 只看该作者
    对象库中找到你的WebElement("99,990") 对象,点击+给他增加Name 属性,同时吧innerText从你的对象属性里删除
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2015-4-17 14:03
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    15#
     楼主| 发表于 2012-8-30 18:29:30 | 只看该作者
    回复 14# xjwldlover是这样子添加name属性吗。
    Browser("xxx").Page("xxx").WebElement("99,900").GetROProperty("balance")
    我获取到的值是空

    本帖子中包含更多资源

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

    x
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    16#
    发表于 2012-8-31 22:46:31 | 只看该作者
    回复 15# jix11

    应该是webElement("99,900").Exists()属性是False,推测可能两种情况会造成这种情形:
    ①可能存在多个webElement,这个就需要你再给这个WEBELEMENT增添其他属性,来确认他的唯一性了
    ②可能只有在上层某个对象展开后才加载这个WebElement对象。

    确认的方法很简单,通过获取Page的childObjects子对象集合,并输出每个CHildObject的属性来查看到底是找到多个对象,还是该对象根本还没加载。

    希望对你有帮助,同时希望有大神补充、纠正~
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    17#
    发表于 2012-9-6 09:55:51 | 只看该作者
    可以参考这个:num_2009=Browser("健康档案管理系统_2").Page("健康档案管理系统_2").Frame("dcEhrAllInfo").WebElement("micclass:=WebElement","innertext:=共.*条记录").GetROProperty("innertext")
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    18#
    发表于 2012-9-6 13:18:09 | 只看该作者
    看书上说动态的可以利用描述性编程解决,不过没有试过,
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

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

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

    GMT+8, 2024-11-17 06:48 , Processed in 0.073629 second(s), 27 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

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