水豚通过数据属性查找锚元素

Capybara find anchor element by data attribute

使用 capybara 我试图通过其数据属性找到锚元素,以便我可以单击它。这个锚元素是动态的,所以我最简单的获取它的方法是通过它的数据属性。

我确实看过 find method, and 上的 Capybara 文档,但对我来说效果不佳。我要么犯了语法错误,要么遗漏了什么。

在我的锚标记内是我的数据属性:

data-delete-association-field-name=“item[item_orders_attributes][0][_destroy]"

所以对于 Capybara,我最终试图找到具有该数据属性的锚标记,然后单击它。这是我当前无法正常工作的实现:

find(‘a[data-delete-association-field-name=item[item_orders_attributes][0][_destroy]]’).click

想通了。我需要为数据属性指定 css 选择器。

This question shows the syntax 对于 css 选择器的数据属性。然后我只需要像这样将其应用于水豚 find 方法:

find(‘a[data-delete-association-field-name="item[item_orders_attributes][0][_destroy]"]’).click