幾分鐘前,我按照升級指南將 laravel 版本從 6.16.0 升級到了 7.17.2 。但我的測試現在失敗了,但有以下例外:Symfony\Component\HttpKernel\Exception\NotFoundHttpException : POST http://localhost/v1/orders在我的文件中APP_URL設置為。但在我的基本 TestCase 類中,我使用自定義端點覆蓋 config('app.url') 。升級之前,測試選擇的是自定義端點。http://localhost.env自上次升級以來,顯然 getJson()、postJson() 等輔助方法不是應用文件中的 URL,config('app.url')而是直接應用.env文件中的 URL。因為當我對文件中的 URL 進行硬編碼時.env,我不再收到 NotFoundHttpException。我該如何解決?
1 回答

森林海
TA貢獻2011條經驗 獲得超2個贊
您可以執行以下操作。
在你的 phpunit.xml 中:
<php>
<server name="APP_URL" value="http://example.com"/>
</php>
或者在你的測試用例中:
use Illuminate\Support\Facades\URL;
protected function setUp(): void
{
parent::setUp();
URL::forceRootUrl('http://example.com');
}
這兩者都會導致app('url')->to('my-endpoint')打印http://example.com/my-endpoint
- 1 回答
- 0 關注
- 138 瀏覽
添加回答
舉報
0/150
提交
取消