非常に単純なキュウリのテストであるべきもので、イライラする問題が発生しています。このテストは、フォーム データを入力せずに単純なフォームを送信しようとし、エラー メッセージが表示されることを想定しています。
Given(/^a user visits the account confirmation page$/) do
visit root_path
end
When(/^the user enters an improperly formatted email address$/) do
click_button "START"
end
Then(/^the user should see an error message$/) do
page.should have_selector("error")
end
エラー メッセージ要素は JQuery によって添付され、css クラス 'error' が与えられます。それが添付されているページの要素には、css クラス「Forms-TextError」があります。このスパンは、ベース html の一部です。
<span id="email_error" class="Forms-TextError">
<span class="error" for="email">Please provide your contact email</span>
</span>
問題は、have_selector がエラー範囲を見つけられないことです。親スパンも見つかりません。そのスパンはベースhtmlの一部であるため、その場合はうまくいくと思うでしょう。
私は何を間違っていますか?