1

我正在使用 Ruby Watir 库为客户端进行自动化测试,但我遇到了 XPath 选择器的问题。我想我只需要另一双眼睛让我知道我是否只是错过了什么。

这是我正在使用的选择器:

puts ie.cell(:xpath, "//img[@src='3.jpg']/../").text

对于这组表格,它按预期工作并打印“第三张图像”:

<table>
  <tr>
    <td><img src="1.jpg">First Image</td>
  </tr>
</table>
<table>
  <tr>
    <td><img src="2.jpg">Second Image</td>
  </tr>
</table>
<table>
  <tr>
    <td><img src="3.jpg">Third Image</td>
  </tr>
</table>

但是当我删除第二个表时它正在中断:

<table>
  <tr>
    <td><img src="1.jpg">First Image</td>
  </tr>
</table>
<table>
  <tr>
    <td><img src="3.jpg">Third Image</td>
  </tr>
</table>

使用上面的 puts 代码,我在第二个示例中得到了这个错误:

Watir::Exception::UnknownObjectException: Unable to locate element, using :xpath, "//img[@src='3.jpg']/../"
4

2 回答 2

1

我重现了这个问题,并重新启动浏览器(IE6)为我修复了它。

于 2009-06-03T07:41:36.453 回答
1

对于当前版本的 Watir,更好的方法是

browser.img(:src => '3.jpg').parent.text

于 2011-12-19T20:05:45.313 回答