flankerzhou 发表于 2010-3-25 16:18:43

测试web页面如何点击webtable中的image

小弟初学QTP用于测试公司的软件。被测软件有一个删除功能,删除按钮是图片。删除按钮与被删除项的名称一起存放在一张table里。页面结构大体如下所示
<table width="100%" cellpadding="0" cellspacing="2">         
         <tr>
            <td nowrap="nowrap">
             <img src="/common/images/layout/arrow_black_right.gif" border="0"/>
             <a class="navitem" href="javascript:funOpenNaviLink('account&listId=12ZHZZRSW0','listmain','1');">QTP-客户名称-包含-姓名</a>
            </td>
            <td align="left">
             <img align="middle" style="cursor: hand" onclick="javascript:funOpenLinkPartReshCfm('userViewShow','list','account','act','delview','forward','delListId=12ZHZZRSW0&reshflag=0');" alt="删除" src="/common/images/icon_clear.gif" />
            </td>
         </tr>
         
         <tr>
            <td nowrap="nowrap">
             <img src="/common/images/layout/arrow_black_right.gif" border="0"/>
             <a class="navitem" href="javascript:funOpenNaviLink('account&listId=1306MXZH3H','listmain','1');">QTP-客户名称-非空-</a>
            </td>
            <td align="left">
             <img align="middle" style="cursor: hand" onclick="javascript:funOpenLinkPartReshCfm('userViewShow','list','account','act','delview','forward','delListId=1306MXZH3H&reshflag=0');" alt="删除" src="/common/images/icon_clear.gif" />
            </td>
         </tr>
         
         <tr>
            <td nowrap="nowrap">
             <img src="/common/images/layout/arrow_black_right.gif" border="0"/>
             <a class="navitem" href="javascript:funOpenNaviLink('account&listId=145PTOG3VS','listmain','1');">QTP-客户名称-不包含-test</a>
            </td>
            <td align="left">
             <img align="middle" style="cursor: hand" onclick="javascript:funOpenLinkPartReshCfm('userViewShow','list','account','act','delview','forward','delListId=145PTOG3VS&reshflag=0');" alt="删除" src="/common/images/icon_clear.gif" />
            </td>
         </tr></table>现在想删除名称为“QTP-客户名称-非空-”的项目,已查出其在第2行,想点击第2行第2列的删除图片,求教脚本应该怎么写?

我按照论坛里搜索到的通过ChildItem获得指定单元格中的链接对象,并点击的方法去尝试了,结果报“缺少对象”。使用脚本如下
Dim objDelTable, objDelButton
Set objDelTable = Browser("TEST").Page("TEST_2").Frame("Frame").WebTable("待删除的项目")
Set objDelButton = objDelTable.ChildItem(intRow, intCol, "Link", 0)
objDelButton.click后来我以为因为table中存放的是图片,就将第3行修改为
Set objDelButton = objDelTable.ChildItem(intRow, intCol, "Image", 0)依然报“缺少对象”的错误。我这里实在是搞不明白了。请各位前辈指点,告知正确的方法。

[ 本帖最后由 flankerzhou 于 2010-3-25 16:37 编辑 ]

shotstar 发表于 2010-3-25 22:19:18

Set objDelButton = objDelTable.ChildItem(intRow, intCol, "Image", 0)

请问是否给intRow和intCol赋值?如果需要点第二行第二列单元格里面的这个图片要写成
Set objDelButton = objDelTable.ChildItem(2, 2, "Image", 0)

如果你已经赋值了还是有这个问题,最大的可能就是Table对象没有正确的获取到。

flankerzhou 发表于 2010-3-26 15:10:42

感谢shotstar的帮助。

我intRow和intCol已经正确赋值。
Table对象应该也没问题,因为在查询的时候,用GetCellData可以得到项目的名称。

今天按照你说的重新添加了一次Table,目前问题已经解决了,只是很奇怪昨天为什么会报错。
页: [1]
查看完整版本: 测试web页面如何点击webtable中的image