ActionController::RedirectBackError エラー

スポンサーリンク

RSpec のテストで遭遇したエラー。実装に redirect_to :back を使っている場合に、テストで発生するエラーです。以下のエラーメッセージが表示されました。

【お知らせ】 英単語を画像イメージで楽に暗記できる辞書サイトを作りました。英語学習中の方は、ぜひご利用ください!
画像付き英語辞書 Imagict | 英単語をイメージで暗記
【開発記録】
英単語を画像イメージで暗記できる英語辞書サービスを作って公開しました
スポンサーリンク

— 環境 —
rails-4.0.1
rspec-rails-2.14.0
capybara-2.2.0

ActionController::RedirectBackError の例外を rescue

redirect_to :back を使用しているメソッドで、上記のように、ActionController::RedirectBackError の例外を rescue して root_path へとリダイレクトさせました。

root_path へとリダイレクトさせるようにしたので、RSpec のテストコードではリダイレクト先の確認を以下のように root_path に設定する。

あるいは、エラーメッセージにあるように、request.env[“HTTP_REFERER”] に適当なリファラーを設定する。私は、実装側で例外を rescue して root_path にリダイレクトさせました。

スポンサーリンク
私は Rails のテストフレームワークには RSpec を使っています。サーバーのテスト用に Serverspec もおすすめです。
 
スポンサーリンク

Leave Your Message!