gpt4 book ai didi

php - 在 laravel 5 中配置测试环境的最佳方式是什么?

转载 作者:可可西里 更新时间:2023-10-31 23:47:14 26 4
gpt4 key购买 nike

我刚刚开始掌握 Laravel5,之前有一些 L4 的经验。我遇到的问题之一是环境配置,主要是关于测试。

我正在尝试连接到一个 mysqlite 数据库,经过大量搜索后,我想到的最好办法是向配置文件添加一个条件,如下所示:

'default' => $app->environment('testing') ? 'sqlite':'mysql'

在我的 phpunit.xml 文件中:

<php>
<env name="APP_ENV" value="testing"/>
<env name="CACHE_DRIVER" value="array"/>
<env name="SESSION_DRIVER" value="array"/>
<env name="QUEUE_DRIVER" value="sync"/>
</php>

但是,现在当我尝试运行我的测试套件时,我收到以下错误:

ReflectionException: Class env does not exist.

在这一点上,我唯一的选择似乎是创建两个单独的 .env 文件,“测试”和“本地”,并根据需要将它们重命名为“.env”。这显然是不高效或不能容忍的。有什么建议吗?

最佳答案

我能够设置不同的数据库连接,在 database.php 配置中设置 env 环境变量:

配置/数据库.php

-    'default' => 'mysql',
+ 'default' => env('DB_CONNECTION','mysql'),

phpunit.xml

<env name="DB_CONNECTION" value="sqlite"/>

关于php - 在 laravel 5 中配置测试环境的最佳方式是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30421825/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com