2011-09-14 12 views
7

空欄になったときに必須フィールドの上に表示される「このフィールドに記入してください」というメッセージを確認するにはどうすればよいですか?Rails 3.1/HTML5がCucumber/Capybaraに必要なフィールドをテストするには?

今、私のキュウリのシナリオは、空のフィールドを完全に無視して、フォームを正常に送信しているようです。セレンドライバ:これはジャバスクリプトベースのアラートである場合

+1

どのCapybaraドライバーをお使いですか? (機械化、セレンなど) –

+0

フィールドにはvalidates_presence_ofがありますが、依頼は受け付けていますか? – Tonys

+0

@AndyWaiteデフォルトでは、capybaraのREADMEを見ると、ちょうどそのように見えます:rack_test。それは私が期待していなかったjavascriptをサポートしていません。その答えはjsドライバを使うことでしょうか? – oliverbarnes

答えて

0

(私はフィールドの存在を確認し、手動で提出するときだ、フォームがメッセージを表示しない)、あなたのようなものを使用する必要があります。そうと@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。あなたの設定に役立つかもしれませんが、それはあなたが現在探している以上のものかもしれません。

関連する問題