Laravel 功能测试中发起多次请求(经过自定义 Guard)时的坑
TL;DR laravel 会缓存 guards,如果你在 guard 中对 $request 做了一些操作,则需要在每次请求前 Auth::forgetGuards(); 正文 这个项目用到一个自定义 Guard,里面有这么一行代码: $this->request->attributes->add(['company' => $company]); 也就是在身份校验通过后往请求里面写入一个变量,方便后续在控制器中读取 在这个功能测试中我需要切换多个身份请求同一个接口,我发现只有第一个身份的请求正常,