如果页面上有选择器,我想用Capybara进行测试。 选择器包含在以下形式中:
<%=form_for @currency.neural_network do |f| %>
<%= f.label "Days" %>
<%= f.select(:prediction_days, [1..30]) %>
<%= f.submit "Predict", class: "btn btn-primary" %>
<% end %>
我不确定如何命名选择器,以便我可以用Capybara验证它的存在。我想做这样的事情:
<%=form_for @currency.neural_network do |f| %>
<%= f.label "Days" %>
<div id="select_days" >
<%= f.select(:prediction_days, [1..30]) %>
</div>
<%= f.submit "Predict", class: "btn btn-primary" %>
<% end %>
以某种方式测试它:
expect(page).to have_selector('select_days')
答案 0 :(得分:0)
我没有回复发表评论所以我不确定是什么导致你的麻烦。如果您想确保选择器 in ,您可以使用以下表单:
expect(page).to have_css('form .select_days')
否则只是
expect(page).to have_css('.select_days')
应该没问题。
请检查:https://github.com/jnicklas/capybara#querying
我希望能帮到你:)。
答案 1 :(得分:0)
您可以将ID添加为选择
的选项<%=form_for @currency.neural_network do |f| %>
<%= f.label "Days" %>
<%= f.select(:prediction_days, [1..30], {}, :id => "your_id" ) %>
<%= f.submit "Predict", class: "btn btn-primary" %>
<% end %>
然后用
进行测试expect(page).to have_selector('#your_id')