51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 5060|回复: 20
打印 上一主题 下一主题

[原创] 如何取页面Table中某列的值?

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2008-4-17 14:38:35 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
如何取编辑框中的值以及table中某列的值?

GetROProperty?GetVisibleText?
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

  • TA的每日心情
    开心
    2016-2-27 08:48
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]测试小兵

    21#
    发表于 2008-5-3 23:45:38 | 只看该作者
    如果你要处理的对象的类型是 某个WebTable里面的 WebElement,那么使用GetCellData 就可以得到某个Cell里面的数据了。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    20#
    发表于 2008-4-30 17:34:44 | 只看该作者
    根据经验,childitem方法不是很好用,不够灵活。建议用ChildObjects,GetCellData这两个方法,组合两个for循环就可以了。

    ChildItem 的返回值是 Object ,的确不是那么好用。但有时就不得不用,因为有时你要进行操作的Image或Link 刚好在某个 WebTable里面,那只能先使用ChildItem 得到此对象,然后再进行处理。

    [ 本帖最后由 walker1020 于 2008-5-3 23:44 编辑 ]
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    19#
    发表于 2008-4-30 16:04:12 | 只看该作者
    直接用Set a=Browser("51Testing软件测试论坛 测试 | 软件测试").Page("[软件测试新手上路精华区] - [软件测试新手上路]").WebTable("版块主题").GetROProperty("innertext")也可以列出webtable中的值。
    要想拆分的话用slip就可以了
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    18#
     楼主| 发表于 2008-4-30 13:55:23 | 只看该作者

    回复 17# 的帖子

    多谢版主指教。。。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2016-2-27 08:48
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]测试小兵

    17#
    发表于 2008-4-24 22:15:06 | 只看该作者
    查看QTP的帮助文件就知道,childitem 的返回值是  Object,因此 你只能写
    Set a=Browser("51Testing软件测试论坛 测试 | 软件测试").Page("[软件测试新手上路精华区] - [软件测试新手上路]").WebTable("版块主题").childitem(2,3,”Image”,0)
    然后使用a.GetROProperty("innertext")来获得它的某个属性值。
    要学会自己根据QTP的 Help 文件 自己写脚本。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    16#
    发表于 2008-4-18 11:39:35 | 只看该作者
    学习学习。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    15#
     楼主| 发表于 2008-4-18 11:17:23 | 只看该作者
    原帖由 鹭岛 于 2008-4-17 14:52 发表
    哪个TABLE?网页上的?
    GetCellData这个还有ChildItem
    这两个都可以,就看需要做什么操作了


    关于ChildItem,它一般是用于取哪些值得? 对于属性中没有Index的object是不是就不可以了?

    我录了一段代码,预取“精华”这个object
    Browser("51Testing软件测试论坛 测试 | 软件测试").Page("51Testing软件测试论坛 测试 | 软件测试").Link("[软件测试新手上路]").Click
    Browser("51Testing软件测试论坛 测试 | 软件测试").Page("[软件测试新手上路] - 51Testing软件测试论坛").Link("[软件测试新手上路精华区]").Click
    Browser("51Testing软件测试论坛 测试 | 软件测试").Page("[软件测试新手上路精华区] - [软件测试新手上路]").Sync
    a=Browser("51Testing软件测试论坛 测试 | 软件测试").Page("[软件测试新手上路精华区] - [软件测试新手上路]").WebTable("版块主题").childitem(2,3,Image,0)
    msgbox(a)
    Browser("51Testing软件测试论坛 测试 | 软件测试").Close

    运行到Childitem时报类型不匹配的错误,是不是因为这个object是image的缘故?
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    14#
    发表于 2008-4-18 10:10:28 | 只看该作者
    解决问题再总结,学习的好方法
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    13#
     楼主| 发表于 2008-4-18 09:37:45 | 只看该作者
    总结一下问题:

    1、没有抓准对象,Mix说很对
    2、没有赋变量给GetCellData(),导致老报错:Syntax Errors(Can't  use parentheses when calling a Sub)
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    12#
     楼主| 发表于 2008-4-18 09:34:59 | 只看该作者
    取到列中数据了

    Browser("51Testing软件测试论坛 测试 | 软件测试").Page("51Testing软件测试论坛 测试 | 软件测试").Link("[软件测试新手上路]").Click
    Browser("51Testing软件测试论坛 测试 | 软件测试").Page("[软件测试新手上路] - 51Testing软件测试论坛").Link("[每日一贴]").Click
    Browser("51Testing软件测试论坛 测试 | 软件测试").Page("[每日一贴] - [软件测试新手上路] -").Sync
    a=Browser("51Testing软件测试论坛 测试 | 软件测试").Page("[每日一贴] - [软件测试新手上路] -").WebTable("版块主题").GetCellData(2,5)
    msgbox(a)
    Browser("51Testing软件测试论坛 测试 | 软件测试").Close

    msgbox=0/983

    [ 本帖最后由 Simatu 于 2008-4-18 09:42 编辑 ]
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    11#
    发表于 2008-4-17 17:11:20 | 只看该作者
    抓对象的时候不要抓那webelement,抓他的上一级webtable
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    10#
    发表于 2008-4-17 16:34:38 | 只看该作者
    我写的脚本是抓出“版块主题”
    其中WebTable("name:=folder_hot").这个是这个“版块主题”的TABLE的属性。。。。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    9#
    发表于 2008-4-17 16:33:43 | 只看该作者
    看下我使用写脚本的方式弄的,你看下,希望有帮助,对于录制,我还比较模糊,哈哈,我现在是录制不懂,脚本懂,哎。。。我看我也要去学习学习录制了

    本帖子中包含更多资源

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

    x
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    8#
     楼主| 发表于 2008-4-17 16:22:29 | 只看该作者
    那个。。。
    我用Step Generator来做的
    操作中提示 You need to define all mandatory arguments.

    请问大虾还需什么设置?

    本帖子中包含更多资源

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

    x
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    7#
    发表于 2008-4-17 16:16:14 | 只看该作者
    WebElement没有那个方法

    你可以使用TABLE来定义,都是一样的。。。。抓出属性,看看它的TABLE名,然后它位于什么位置。。。。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    6#
     楼主| 发表于 2008-4-17 16:09:40 | 只看该作者
    原帖由 鹭岛 于 2008-4-17 15:57 发表
    Browser("51Testing软件测试论坛 测试 | 软件测试").Page("[QTP精华区] - [QuickTest").WebElement("回复/查看").object.GetCellData(5,3)

    OBJECT去掉


    恩恩,WebElement("回复/察看" ) 即为Object

    Browser("51Testing软件测试论坛 测试 | 软件测试").Page("51Testing软件测试论坛 测试 | 软件测试").Link("[QuickTest Pro]").Click
    Browser("51Testing软件测试论坛 测试 | 软件测试").Page("[QuickTest Pro] - 51Testing软件测").Link("[QTP精华区]").Click
    a=Browser("51Testing软件测试论坛 测试 | 软件测试").Page("[QTP精华区] - [QuickTest").WebElement("回复/查看").GetCellData(5,3)
    Msgbox(a)

    运行时Run Error: 对象不支持此属性或方法: 'Browser(...).Page(...).WebElement(...).GetCellData'


    哦!
    此对象为WebElenment,非Table的缘故?
    试下

    [ 本帖最后由 Simatu 于 2008-4-17 16:11 编辑 ]
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    5#
    发表于 2008-4-17 15:58:33 | 只看该作者
    另外这个GetCellData(5,3)是取得值的,你这个值要给某个变量的~~
    aa=Browser("51Testing软件测试论坛 测试 | 软件测试").Page("[QTP精华区] - [QuickTest").WebElement("回复/查看").GetCellData(5,3)
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    4#
    发表于 2008-4-17 15:57:33 | 只看该作者
    Browser("51Testing软件测试论坛 测试 | 软件测试").Page("[QTP精华区] - [QuickTest").WebElement("回复/查看").object.GetCellData(5,3)

    OBJECT去掉
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    3#
     楼主| 发表于 2008-4-17 15:49:35 | 只看该作者
    原帖由 鹭岛 于 2008-4-17 14:52 发表
    哪个TABLE?网页上的?
    GetCellData这个还有ChildItem
    这两个都可以,就看需要做什么操作了



    是网页上的。
    GetCellData?
    我在51上试了一下:
    Browser("51Testing软件测试论坛 测试 | 软件测试").Page("51Testing软件测试论坛 测试 | 软件测试").Link("[QuickTest Pro]").Click
    Browser("51Testing软件测试论坛 测试 | 软件测试").Page("[QuickTest Pro] - 51Testing软件测").Link("[QTP精华区]").Click
    Browser("51Testing软件测试论坛 测试 | 软件测试").Page("[QTP精华区] - [QuickTest").WebElement("回复/查看").object.GetCellData(5,3)

    打开QTP板块的精华区,预得到第5行的回复/察看值。
    运行脚本时说调用子程序时不能用括号。。。
    哪得问题?
    大虾~~
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

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

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

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

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

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