我有一些这样的 HTML:
<ul id="directory">
<li><a id="first" href="/first">first</a></li>
<li><a id="second" href="/second">second</a></li></ul>
我想根据其文本和与 id 为“目录”的 ul 的关系来定位 id 为“second”的链接,然后使用 watir-webdriver 单击它。
似乎应该简单地说:
browser.ul(:id => 'directory').li.a(:text => 'second')
但这不存在。
经过研究,我想也许我应该这样做:
browser.ul(:id => 'directory').lis.a(:text => 'second')
但LICollection
甚至没有a
方法。我想也许我应该做点什么,each
但我不知道会是什么。
有没有一种好方法可以识别这个元素,而无需使用 CSS 或 XPath 选择器,使用以下标准:
- 它是一个锚。
- 它有文字“第二”。
- 它是 li 元素的子元素,它是 ul 元素的子元素,其 ID 为“目录”。