Capybara - 查找具有 ID 和文本的元素或使用多个属性

Capybara - finding an element with Id & text or using multiple properties

我有 2 个 ID 相同但文本不同的链接

<li class=""> 
<a href="#" id="2">2</a>
</li>

<li class="">
<a href="#" id="2">Next</a>
</li>

现在我想写点像

page.find_by_id("2").has_text?("2")

但无法确定如何找到 id = "2" & text ="2" 的元素

我遇到错误

Capybara::Ambiguous: Ambiguous match, found 2 elements matching id "2"

获取 ID 为“2”的最后一个 link:

page.all(:css, "a[id='2']").last()

获取 ID 为“2”且文本为 "Next" 的第一个 link:

page.find(:xpath, "//a[@id='2'][text()='Next']")

获取第一个 link 文本 "Next":

page.find_link("Next")