laravel单元测试之phpUnit中old()函数报错解决
前言
最近在做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无法开启,聪明反被聪明误,本来想用这个方法不想写中间件的东西然后却被自己给套进去了,然后去了这段代码,重写了逻辑,运行正常了.
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对我们的支持。
相关推荐
-
laravel单元测试之phpUnit中old()函数报错解决
前言 最近在做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:
-
PHP empty函数报错解决办法
PHP开发时,当你使用empty检查一个函数返回的结果时会报错:Fatal error: Can't use function return value in write context 例如下面的代码: 复制代码 代码如下: <?php echo empty(strlen('test')); 转到PHP手册里面查看,在empty函数描述的地方有以下文字: 复制代码 代码如下: Note : empty() only checks variables as anything else wil
-
解决python3中自定义wsgi函数,make_server函数报错的问题
#coding:utf-8 from wsgiref.simple_server import make_server def RunServer(environ, start_response): start_response('200 OK', [('Content-Type', 'text/html')]) return '<h1>Hello, web!</h1>' if __name__ == '__main__': httpd = make_server('localho
-
MYSQL updatexml()函数报错注入解析
首先了解下updatexml()函数 UPDATEXML (XML_document, XPath_string, new_value); 第一个参数:XML_document是String格式,为XML文档对象的名称,文中为Doc 第二个参数:XPath_string (Xpath格式的字符串) ,如果不了解Xpath语法,可以在网上查找教程. 第三个参数:new_value,String格式,替换查找到的符合条件的数据 作用:改变文档中符合条件的节点的值 改变XML_document中符合X
-
JS 调试中常见的报错问题解决方法
报错:Uncaught SyntaxError: Unexpected token o in JSON at position 1 at JSON.parse (<anonymous>) at Function.m.parseJSON (jquery.js:8515) at Object.success (crud.html:45) at j (jquery.js:3143) at Object.fireWith [as resolveWith] (jquery.js:3255) at x (
-
详解VS2019使用scanf()函数报错的解决方法
目录 scanf_s()函数 scanf_s()函数与scanf()函数的区别 VS2019使用scanf()函数报错的解决方法 解决方法一 解决方法二 解决方法三 解决方法四 首先来看一段很简单的C语言代码 #include<stdio.h> int main(void) { char s[10]; scanf("%s",s); printf("%s",s); return 0; } 这段代码的作用就是输入一个字符串,再把这个字符串输出.在其他IDE(
-
pycharm中keras导入报错无法自动补全cannot find reference分析
目录 引言 分析 解决方法 理论解释 1. 直接导入keras 2. 从tensorflow里导入keras 3. 从tensorflow.python里导入keras: 4. 不导入keras 总结 引言 目前无论是中文还是国外网站对于如何正确的导入keras,如何从tensorflow中导入keras,如何在pycharm中从tensorflow里导入keras,这几个问题都众说纷纭,往往是互相借鉴给出一个可用的解决方法,但没有更进一步的解释了.常见因为keras导入引发的问题有以下几个:
-
vue3在自定义hooks中使用useRouter报错的解决方案
目录 自定义hooks中使用useRouter报错 useRouter useRoute 使用Vue.use()报错“Cannot read property ‘use‘ of undefined” 原因 正解 自定义hooks中使用useRouter报错 随着vue3的更新,vue-router也更新到了4.x useRouter 相当于vue2的this.$router全局的路由实例,是router构造方法的实例 useRoute 相当于vue2的this.$route表示当前激活的路由的状
-
一文带你解决Python中的所有报错
目录 前言 Python安装 HTTPSConnectionPool(host=‘files.pythonhosted.org‘, port=443): Read timed out解决 xlrd.biffh.XLRDError: Excel xlsx file; not supported解决 Fatal error in launcher: Unable to create process using解决 报错Non-zero exit code (2)解决 [notice] A new r
-
SpringMail使用过程中的报错解决办法
SpringMail使用过程中的报错解决办法 1.Unable to locate provider for protocol: smtp –>缺少依赖造成的 <dependency> <groupId>javax.mail</groupId> <artifactId>mail</artifactId> <version>1.4</version> </dependency> <dependency
随机推荐
- 详解IDEA用maven创建springMVC项目和配置
- java实现jdbc查询结果集result转换成对应list集合
- 谷歌地图打不开的解决办法
- php实现阳历阴历互转的方法
- 高性能web服务器框架Tornado简单实现restful接口及开发实例
- C#数据库操作类AccessHelper实例
- JavaScript数据结构与算法之集合(Set)
- 原生JS和JQuery动态添加、删除表格行的方法
- bootstrap实现弹窗和拖动效果
- Nodejs多站点切换Htpps协议详解及简单实例
- 鼠标悬停小图标显示大图标
- Android 验证码功能实现代码
- 浅谈java String.split丢失结尾空字符串的问题
- Android跳转到系统联系人及拨号或短信界面
- 停止Win2000中不必要的服务
- Python爬虫实例爬取网站搞笑段子
- python实现自动发送邮件发送多人、群发、多附件的示例
- Python实现的对一个数进行因式分解操作示例
- Django组件content-type使用方法详解
- ajax与websocket的区别以及websocket常用使用方式 介绍