51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 3371|回复: 6
打印 上一主题 下一主题

[原创] QTP:webtable中同一个单元格多个链接,该如何定位

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2011-6-20 17:02:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
图片附件中展示webtable的结构。
说明:在操作列下的同一个单元格中存在3个链接“自我评价”“实习交流”“ 实习总结”。
这里假设“到时任务名称”唯一,可以根据导师任务名称确定需要点击的行数。
预期结果:
怎么样根据需要定位到不同行3个链接“自我评价”“实习交流”“ 实习总结”,分别点击进去。


在录制的时候,脚本如下:
Browser("SmartLearning").Page("SmartLearning_2").Frame("iframeTab_tur_task_student_per").Link("实习总结_2").Click
1.但是这个链接位置固定,现在需要将其根据需要选择正确的行数的链接。
2.其属性中的url存在可以区分的唯一性标识ID(url=javascript:doEditStudentExchange('9da7363f-f501-475d-bc11-0463ea29974e','acc3d105-505d-4ace-922a-89daff6e5c8e'))

经过处理后的代码:
task_name="test"
'num=Browser("SmartLearning_2").Page("SmartLearning").Frame("iframeTab_tur_task_student_per").WebTable("操作").RowCount
'For i=0 to num
'    If Browser("SmartLearning_2").Page("SmartLearning").Frame("iframeTab_tur_task_student_per").WebTable("操作").GetCellData(i,3)=task_name Then
  '      Browser("SmartLearning_2").Page("SmartLearning").Frame("iframeTab_tur_task_student_per").WebTable("操作").ChildItem(i,2,"Link",0).Clik
' End If
'Next
由于这里定位到单元格,但是同一个单元格中存在3个链接,所以系统提示找不到对象。

请问,要怎样处理才能获取正确的链接?

本帖子中包含更多资源

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

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

使用道具 举报

  • TA的每日心情
    开心
    2018-7-13 14:04
  • 签到天数: 6 天

    连续签到: 1 天

    [LV.2]测试排长

    2#
    发表于 2011-6-20 18:10:57 | 只看该作者
    看一下,是不是因为某一属性是动态,所至。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    3#
    发表于 2011-6-20 19:51:44 | 只看该作者
    这里还是用描述性编程来区分三个链接比较靠谱
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    4#
    发表于 2011-6-21 10:29:42 | 只看该作者
    本帖最后由 kurt_share 于 2011-6-21 10:32 编辑

    看下是不是因为
    For i=0 to num这句引起错误,因为行为0时,貌似是表头,也就是“操作”那两个字,而实际上得到链接是从第一行开始的,也就是For i=1 to num
    你先查一下运行中WebTable的rowcount是多少,然后和实际对照一下,就知道是不是把表头算进去了。
    另外是不是to num这个你再看一下,会不会下标越界啊。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    5#
     楼主| 发表于 2011-6-21 15:15:30 | 只看该作者
    谢谢各位的支持与解答。这个问题一半是自己粗心造成的。解决方案如下:
    ChildItem(i,2,"Link",0).Clik
    这里的click写错了,导致报对象找不到错误。
    ChildItem中index属性(第四列)对应单元格中的链接顺序。0对应第一个,1对应第二个,2对应第三个。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    6#
    发表于 2011-6-21 16:12:25 | 只看该作者
    学习了ChildItem
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    7#
    发表于 2011-6-21 16:21:14 | 只看该作者
    不管之前犯什么错,能够自己把问题搞定的都是好同志,呵呵
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

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

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

    GMT+8, 2024-11-8 19:43 , Processed in 0.071750 second(s), 28 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

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