【Rails Minitest】'test' is already defined in Users::SessionsControllerTest (RuntimeError)

 

RailsMinitest中に発生したエラー。

 

 

`test': test_new_test is already defined in Users::SessionsControllerTest (RuntimeError)

 

 

エラー文のまま検索したら

検索結果が0件だったので共有しておく。

 

 

原因

 

このエラーは、同じテストファイル内で同一のテスト名が指定されている時に表示されるエラーである。

 

自分のファイルを見返してみると全く同じテスト名のものがあった。

 

 

test "new test" do
get new_user_session_path
assert_response :success
end


# ~~~


test "new test" do
get new_user_password_path(format: :json)
assert_response :success
end

 

 

なので、どちらか片方のテスト名を編集してやればテストはいつも通り動作する。

 

test "new test" do
get new_user_session_path
assert_response :success
end


# ~~~


test "passwords new test" do
get new_user_password_path(format: :json)
assert_response :success
end

 

 

 

以上。

 




RubyとRailsの関連記事
  • 【全て公開】Railsエンジニアが入社6ヶ月で使ったRubyGems 4選
  • 【Rails Minitest】'test' is already defined in Users::SessionsControllerTest (RuntimeError)
  • 【全て公開】Railsエンジニアが6ヶ月間で実務で使った技術3選
  • 【Rails】RailsにRedisを接続する日本1シンプルなやり方
  • 【Docker】unknown mysql server host 'db' (-2) と表示されるときの対処法
  • Docker × Railsで日本時間を設定する方法