在Ruby Watir中使用XPath进行健全性检查

时间:2009-06-02 19:54:01

标签: ruby xpath watir

我正在使用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']/../"

2 个答案:

答案 0 :(得分:1)

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

答案 1 :(得分:1)

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

browser.img(:src =&gt;'3.jpg')。parent.text