アクションに投稿するrspecテストがあります。アクションでは、セッション変数が確実に設定されていますが、コントローラのテストでは、セッションハッシュは空です。コントローラがセッション変数を適切な値に設定したかどうかを確認するには、Rspecテストをチェックインするにはどうすればよいですか?コントローラのアクションでセッション変数が設定されている場合のRspecテスト
答えて
session[:key]
のように、rspecで直接セッションにアクセスできます。それをあなたが望む価値と比較するだけです。
ごめんなさい。私はそれを試みたが、セッションは空だった。仕様は空のセッションを持っていますが、通常の方法でコントローラを使用しています。 – chris
@Chris、何度も何度もやったことがありますので、動作することがわかります。必要に応じてコードを貼り付けてください。 –
コントローラーにbefore_filter
を使用していますか? before_filter
がフローを変更し、変数をセッションに割り当てるコードが評価されていない場合でも、これが当てはまる可能性があります。
は、たとえば、あなたのコントローラでこのラインを持っていることがあります。あなたが署名されていない場合、あなたはこのコントローラ内の任意の方法を入力することはありません意味
# ...
before_filter :authenticate_user!
# ...
。したがって、session
変数は空になります。
- 1. ネストされたリソースのコントローラの作成アクションのRSpecテスト
- 2. Railsの統合テストでセッション変数を設定する方法
- 3. Grails:GORMでドメインクラスプロパティが設定されている場合のアクションの実行方法
- 4. セッション変数がすでに設定されています
- 5. セッション変数が設定されていない
- 6. 変数が定義されている場合のオートタビングとチェック
- 7. セッション変数が設定されていません
- 8. セッション変数が最初に設定されていません
- 9. テストするCマクロ:「複数定義されている場合」
- 10. 属性が更新された場合のRspecテスト
- 11. javascript変数が設定されている場合にPHPファイルを含める
- 12. LESS変数が設定されていない場合に設定してください
- 13. セッションが特定の値に設定されているかどうかのテスト
- 14. FaceBookのセッションがコントローラ内に設定されていないコードネームで
- 15. RSpecテストでコントローラが呼び出されない
- 16. 変数と変数が定義されている場合 - Jinja2の
- 17. セッションが設定されているかどうかを確認し、セッションが設定されていない場合はチェックします。
- 18. ラウンドロビンディレクターでクッキー/セッションが提供されている場合のワニスキャッシュ
- 19. RSpec、Devise、工場の女の子でコントローラをテストする
- 20. RSpecコントローラのテスト - ブランクのresponse.body
- 21. 一連のアクションをRSpecでテストする
- 22. CodeIgniter:hooksrでセッション変数やコントローラ変数を設定する方法は?
- 23. ASP.NETセッションbool変数がページロードでヌルに設定されています
- 24. Rails rspecコントローラのテストとインテグレーションのテスト
- 25. セッション状態は、enableSessionStateがtrueに設定されている場合にのみ使用可能です
- 26. Matlab:定義されていない場合はInit変数
- 27. コントローラのページが見つからない場合の未定義の変数
- 28. __version__変数が設定されていない場合、Pythonパッケージのバージョンを確認する方法
- 29. 設定がRequireJSで設定されている場合、RequireJSを使用してモジュールを設定する
- 30. ユーザーがログインしている場合、Asp.Net MVCコントローラのアクションをチェックする方法
だから、実際の原因は何ですか? (あなたは答えを尋ねたが、実際には説明しなかったので) – lulalala
答えは私が尋ねた質問に対して正しいが、私の問題は私の質問に無関係に終わった – chris