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无法开启,聪明反被聪明误,本来想用这个方法不想写中间件的东西然后却被自己给套进去了,然后去了这段代码,重写了逻辑,运行正常了.

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对我们的支持。

(0)

相关推荐

  • 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

随机推荐