読者です 読者をやめる 読者になる 読者になる

capybaraでテスト対象のURLを指定する場合に named route が見つからない場合の設定

以下の通りcapybaraでテスト対象のURLを指定する場合に named route が見つからないでエラーとなることがあります。

[ruby] describe ‘….’ do … # new_user_registration_path へアクセスする before { visit new_user_registration_path } … end

-> NameError: undefined local variable or method `new_user_registration_path' for main:Object [/ruby]

このような場合には、 spec_helper に以下の設定を追加すればうまくいくはずです。

[ruby]

spec_helper.rb

config.include Rails.application.routes.url_helpers [/ruby]

参考

ruby on rails - Rspec and named routes - Stack Overflow