RSpec と Capybara を使用して単体テストを行うプロジェクトがあります。モデルとコントローラーのテストを完全に洗い出し、問題なくパスし、データベースの事前検証のための重労働を処理しました。
現在、ユーザー エクスペリエンスとフロント エンド アイテムをテストしており、フォームが送信されなかったことを確認する方法を知りたいと考えています。ユーザーがパスワードやその他の誤ったデータと一致しない場合、エラーを設定して送信を防止するスクリプトがあります。
エラーテキストを検索できることは知っていますが、「送信」が行われなかったことを確認する方法があり、サーバーへのトリップが行われていないことを確信できます。
私は次のようなものが欲しい:
it "should not sumbit if user name is less than 3 characters" do
visit /edit_account_settings(@user)
fill_in "username", :with => "fo"
click_button "SAVE"
# HOW DO I DO THIS?
expect( ... ).not_to submit_to_server
end