Laravel Telescope不记录来自TestCase的请求

时间:2019-05-15 23:47:11

标签: laravel laravel-testing

出于调试目的,我希望Telescope记录来自Testing Suite的任何请求。望远镜暂时没有,我也不知道为什么。

我在phpunit.xml中启用了望远镜

<env name="TELESCOPE_ENABLED" value="true"/>

这是我的功能测试

$this->getJson('/api/vehicle')->assertStatus(401);

当我打开望远镜时,没有保存/api/vehicle的条目。

1 个答案:

答案 0 :(得分:0)

我需要始终强制Telescope在TelescopeServiceProvider中记录

class TelescopeServiceProvider extends TelescopeApplicationServiceProvider
{
    /**
     * Register any application services.
     *
     * @return void
     */
    public function register()
    {
        // Telescope::night();

        Telescope::filter(function (IncomingEntry $entry) {
            if ($this->app->environment('local')) {
                return true;
            }

            if ($this->app->environment('testing')) {
                return true;
            }

            return $entry->isReportableException() ||
                   $entry->isFailedJob() ||
                   $entry->isScheduledTask() ||
                   $entry->hasMonitoredTag();
        });
    }

由于望远镜前端已链接到development-database,因此testing期间记录的望远镜条目将保存在testing-database中,这说明了何时刷新望远镜前端(使用{ {1}}),什么也没显示。