テストにキュウリを使用しており、連絡フォームに simple_form を使用しています。次のエラーが表示されます。
Given I am on the login page
And I fill in "student_name" with "sadik"
Unable to find field "student_name" (Capybara::ElementNotFound)
私の手順:
Scenario: Add a student to the database
Given I am on the login page
And I fill in "student_name" with "sadik"
When I press "OK"
...
フォーム:
<%= simple_form_for @student do |f| %>
<%= f.input :name, label: 'student_name' %>,
:input_html => { :field => 'student_name' } %>
<%= f.button :submit %>
<% end %>
ラベルの代わりにIDと名前も試しました。しかし、それは効果がありませんでした。
しかし、最初のステップは正しいです:
When /^I go to (.+)$/ do |page_name|
visit path_to(page_name)
end
When /^I fill in "([^\"]*)" with "([^\"]*)"$/ do |field, value|
fill_in(field.gsub(' ', '_'), :with => value)
end
では、どこに問題があるのでしょうか。