Laravel & PHPUnit:单元测试时获得 500 "Passport" 限制路由

Laravel & PHPUnit: Getting 500 when unit testing "Passport" restricted route

我有一个 Laravel 5.3 应用程序。

在我的 api.php 文件中,有一个在投票中发布答案的途径。

Route::group(['middleware' => 'auth:api'], function () { Route::post('/poll/answer', 'API\PollsController@createAnswer'); });

该路由是组的一部分,受 auth:api 中间件限制,使用 Laravel 的 Passport 引擎。

当从 Postman 或任何其他工具调用此路由来测试 API 时,我收到 401,这是正常的,因为我没有附加令牌。

但是当使用 PHPUnit 对该调用进行单元测试时,它 returns 500。我不知道为什么。

$this->postJson('api/poll/answer');

我可能缺少配置或设置说明。

有什么想法吗?

发生 500 错误是因为我忘记将应用程序密钥添加到 .env.testing 文件。

添加后解决了。