尝试验证以下HTML中的第二个链接:
<div id="navigation">
<ul>
<li>
<a href="/tv">TV</a>
</li>
<li>
<a href="/radio">Radio</a>
</li>
使用以下表达式:
page.find(:xpath, "//div[@id='navigation']//a").should have_content('Radio')
我收到以下错误:
expected there to be content "Radio" in "TV"
当我使用双斜线时,不应该在DIV节点内的所有A元素中找到方法研究吗?这可能是一个错误,还是我做错了什么?
还有其他方法可以验证第二个链接吗?
感谢帮助人员!
答案 0 :(得分:0)
在你的情况下,find会在Capybara中找到a
&lt; 2.0并将在Capybara 2.0中引发一个不明确的匹配异常,因为这样的定位器有多个元素。
我建议你做以下事情:
page.should have_selector('#navigation a', text: 'Radio')