【发布时间】:2018-01-21 01:06:24
【问题描述】:
PHPunit 测试和 Artisan Dusk 测试都使用来自 .env 文件的 APP_URL。
但是有一些奇怪的东西,可能是因为我的设置但我不知道,它很疯狂。
我有 Xampp,我的项目在 localhost/forum/
当我有
APP_URL=http://localhost
我的单元测试没问题。
例如
$response = $this->get('sekcja/sadsadsadsadas');
$response->assertStatus(200);
一切都好。
就像 laravel 知道它是 http://localhost 但在 http://localhost/forum/ 上进行测试,因为有这个项目并在 http://localhost/forum/sekcja/sadsadsadsadas 上查看
但是……
黄昏看错了。
Dusk 正在加载我欢迎 XAMPP 页面的本地主机。
localhost/forum/不是我的项目页面
然后我将ENV更改为APP_URL=http://localhost/forum/
而且效果不错,黄昏测试也不错……
但是,你知道吗?
我的 PHPunit 测试不好,它们不再工作了。
他们再也找不到这个$this->get('sekcja/sadsadsadsadas');了。
所以我的问题是
这里发生了什么?在我为黄昏阅读的文档中,我必须按照我的设置进行设置,但是我的 PHPunit 测试被破坏了。为什么?如果 phpunit 和黄昏测试都使用相同的变量,为什么他们想要不同的值?这有点傻。
【问题讨论】:
-
我不知道你是如何运行你的黄昏测试的,你是通过
php artisan serve或类似的东西运行标准的 php 网络服务器吗?这与使用 XAMPP 不同,可能是您的问题的原因,我从未使用过 XAMPP,我只使用过 Homestead,但也许这就是问题的原因。 -
我只有 htdocss 中的所有内容,它是通过 xampp 运行的。我通过php artisan黄昏@JonnySerra进行测试
标签: php laravel phpunit laravel-dusk