空欄になったときに必須フィールドの上に表示される「このフィールドに記入してください」というメッセージを確認するにはどうすればよいですか?Rails 3.1/HTML5がCucumber/Capybaraに必要なフィールドをテストするには?
今、私のキュウリのシナリオは、空のフィールドを完全に無視して、フォームを正常に送信しているようです。セレンドライバ:これはジャバスクリプトベースのアラートである場合
空欄になったときに必須フィールドの上に表示される「このフィールドに記入してください」というメッセージを確認するにはどうすればよいですか?Rails 3.1/HTML5がCucumber/Capybaraに必要なフィールドをテストするには?
今、私のキュウリのシナリオは、空のフィールドを完全に無視して、フォームを正常に送信しているようです。セレンドライバ:これはジャバスクリプトベースのアラートである場合
(私はフィールドの存在を確認し、手動で提出するときだ、フォームがメッセージを表示しない)、あなたのようなものを使用する必要があります。そうと@javascript
であなたのシナリオにタグを付けるには
# Set selenium as the default driver for javascript
Capybara.javascript_driver = :selenium
# Register chrome browser for the :selenium driver
Capybara.register_driver :selenium do |app|
Capybara::Selenium::Driver.new(app, :browser => :chrome)
end
、単にThen I should see "Please fill out this field"
のようなステップを使用して動作するはずです。
I have a gist up that summarizes using :selenium, :capybara-webkit, headless gem for both development and continuous integration。あなたの設定に役立つかもしれませんが、それはあなたが現在探している以上のものかもしれません。
どのCapybaraドライバーをお使いですか? (機械化、セレンなど) –
フィールドにはvalidates_presence_ofがありますが、依頼は受け付けていますか? – Tonys
@AndyWaiteデフォルトでは、capybaraのREADMEを見ると、ちょうどそのように見えます:rack_test。それは私が期待していなかったjavascriptをサポートしていません。その答えはjsドライバを使うことでしょうか? – oliverbarnes