热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

无法在Laravel5.5中将APP_ENV设置为``测试''以进行单元测试

如何解决《无法在Laravel5.5中将APP_ENV设置为``测试''以进行单元测试》经验,为你挑选了1个好方法。

我在Homestead-7上使用Laravel 5.5,phpunit 6.5.5(我认为)。

我正在尝试本教程:https : //laravel-news.com/your-first-laravel-application(这应该告诉您很多我在框架方面的经验)

测试失败(由于TokenMismatchException),尽管我尝试了许多将其APP_ENV设置为的方法local,但我设法找出了设置为该变量的根本原因testing

最后,让我克服了这个问题的是设置变量,如下所示:

APP_ENV=testing vendor/bin/phpunit

然后,测试成功完成。

我的问题是,我在做什么错?上述破解显然不是最好的方法。必须有一种正确执行此操作的方法。

更新资料

内容phpunit.xml



    
        
            ./tests/Feature
        

        
            ./tests/Unit
        
    
    
        
            ./app
        
    
    
        
        
        
        
        
        
    

预先感谢您的宝贵时间。



1> jdunk..:

从Laravel文档中:

当通过运行测试时phpunittesting由于phpunit.xml文件中定义了环境变量,Laravel将自动将配置环境设置为。

...所以我敢打赌,您的phpunit.xml文件丢失或配置错误。它应该在您项目的根目录中,并应包含以下内容:


    
    ...

如果您确实phpunit.xml在正确的位置有一个文件,并且确实包含上面的部分,但无法使用,请尝试清除配置缓存:

php artisan config:clear

如果仍然不能解决问题,那么我将检查phpunit.xml文件是否有异常,例如被错误命名或包含语法错误。

这是原始文件的链接phpunit.xml,以帮助您在需要时还原它。


只想说谢谢@jdunk!我有一个星期的问题,失去了理智。`php artisan config:clear`确实很不错,很合理!
推荐阅读
author-avatar
朝阳又起风云
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有