私が取り組んでいるRailsアプリケーションには、フィールドが入力されておらず、フォームが送信されたときにエラーメッセージを表示するページがあります。
フィールドでのクライアント側の検証はjQueryを使用して行われ、手動でテストするとブラウザから正常に動作します
フィールドのデータがユーザーによって入力されていない場合、フォームの送信はまったく停止されます。
このためのテストを書くための私のオプションは何ですか
Jasmine を見ましたが、javascript 関数自体をテストしたい場合により便利なようです。イベントがページで正しく起動しているかどうかをテストするのには役立ちません。(これについて間違っている場合はお知らせください)
私はrspecを見て、このようなテストを書きました
require 'spec_helper' describe 'Sample Test Page' do it 'should show error when Some Field is not specified' do visit '/sample_page' click_button "Submit" page.should have_content 'You forgot to Enter details in Some Field' end end
しかし、ここで起こっていることは、検証がまったく実行されずにフォームが送信され、エラーが発生することです(アプリケーションが空白値に対してエラーをスローするため)
私の最良の選択肢は何ですか?Railsの哲学でこれをテストするのに役立つ別のツールはありますか?