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
随机推荐
- C++中的string类的用法小结
- Java基础教程之理解Annotation详细介绍
- MySQL5.6基本优化配置
- Android自定义 WebView浏览器
- .net接入支付宝的支付接口
- 详解duck typing鸭子类型程序设计与Python的实现示例
- JSP由浅入深(2)—— 第一个JSP
- win2008 php运行环境搭建图文教程
- 连接MySql速度慢的解决方法(skip-name-resolve)
- Android实现底部半透明弹出框PopUpWindow效果
- 全面解析JavaScript中“&&”和“||”操作符(总结篇)
- ActiveMQ基于zookeeper的主从(levelDB Master/Slave)搭建
- 禁止IP访问网站的多种方法分享(linux,php,nginx,apache)
- 浅谈apache和nginx的rewrite的区别
- centos7安装nginx的两种方法介绍
- linux对文件解压或打包压缩的方法
- Python中将字典转换为列表的方法
- Android使用TextInputLayout创建登陆页面
- macOS下Spring Boot开发环境搭建教程
- Nginx使用limit_req_zone对同一IP访问进行限流的方法