Capybara - 按类名单击元素

Kin*_*ing 16 ruby automation capybara

对于一个似乎是一个简单问题的问题,我已经在这个问题上花了很长时间,似乎无法在Google上找到任何东西.我有这个按钮我需要点击哪个没有id但是包含了一个类

<button class="filter-case-studies" onclick="initBootpag(filterForContentType('CASE STUDIES', searchHits))" type="button">
<b>CASE STUDIES</b>
(2)
</button>
Run Code Online (Sandbox Code Playgroud)

我尝试过使用click_on我现在知道的仅用于链接和按钮,所以当然不会起作用.这是我到目前为止:

When(/^I filter the results to only see case studies$/) do
  click_on('filter-case-studies')
end
Run Code Online (Sandbox Code Playgroud)

我也尝试过page.find('filter-case-studies').click,这也行不通.

page.find(:class, 'filter-case-studies').click 因为这对我来说也是失败的.

在Capybara中没有办法按类名点击元素吗?

在此先感谢您的帮助.

Tho*_*ole 27

在Capybara执行此操作的标准方法是

find('button.filter-case-studies').click
Run Code Online (Sandbox Code Playgroud)

在相对较新版本的Capybara中你也应该能够做到

click_on(class: 'filter-case-studies')
Run Code Online (Sandbox Code Playgroud)