前言
最近在做laravel單元測試.遇到了一個問題:
當添加的view里面使用old()函數時就會報錯,正常url訪問沒問題,但是在phpUnit中就報錯
錯誤原因: exception 'RuntimeException' with message 'Session store not set on request.' in /Users/lei/Sites/goodstyle/vendor/laravel/framework/src/Illuminate/Http/Request.php:870
很明顯這是一個跑出session沒有開啟的原因,但是phpUnit是laravel自己配置環境的,很是糾結,于是查看源代碼
解決過程
開啟session(app/Http/kerner)
很明顯我已經開啟了session,但是我又找到了我單元測試的代碼發現我開啟了這段代碼
忽略中間件的限制
因為這段代碼導致我session無法開啟,聰明反被聰明誤,本來想用這個方法不想寫中間件的東西然后卻被自己給套進去了,然后去了這段代碼,重寫了邏輯,運行正常了.
總結
以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對綠夏網的支持。