はじめに
Railsチュートリアル7章「リスト7.23:無効なユーザー登録に対するテスト」のコードの解説です。
ユーザー登録ボタンを押したときに (ユーザー情報が無効であるために) ユーザーが作成されないことを確認します。
コード
test/integration/users_signup_test.rb
require'test_helper'classUsersSignupTest<ActionDispatch::IntegrationTesttest"invalid signup information"dogetsignup_path#getメソッドでユーザー登録ページにアクセスassert_no_difference'User.count'do#User.countが変わったらエラーを出す。postusers_path,params: {user: {name: "",email: "user@invalid",password: "foo",password_confirmation: "bar"}}#無効なユーザーデータをPOSTする#正常な場合はUser.countは変わらずtrueとなる。endassert_template'users/new'#サインアップに失敗した時に再度ユーザー登録画面になることを確認。endend