首页 > 解决方案 > cartalyst 扩展的路线仅在第一次测试后设置

问题描述

请帮助我将 Laravel 5.5 与 Cartalyst Platform 7.0 和 Phpunit 6.0 一起使用。我一直在尝试在测试环境中安装扩展,但是当第一个测试运行时,扩展路由未定义,因此测试返回 404。第二个测试和其余测试通过,因为路由现在存在。如果我 echo(count(\Route::getRoutes())) 第一个测试是 11,其余的是 329。

测试用例

<?php
use Illuminate\Foundation\Testing\TestCase as BaseTestCase;
use Illuminate\Support\Facades\Artisan;
use Sentinel;

abstract class TestCase extends BaseTestCase
{
    use TestData, CreatesApplication;

    public function setUp()
    {
        parent::setUp();

        $this->app['Illuminate\Contracts\Http\Kernel']->disableMiddleware();

        Sentinel::getUserRepository()->setModel(\App\Models\User::class);
        Sentinel::getPersistenceRepository()->setUsersModel(\App\Models\User::class);

        $this->setUpDatabase();
    }

    protected function setUpDatabase()
    {
        Artisan::call('migrate');
        Artisan::call('extension:install');
        Artisan::call('extension:enable');
    }
}

标签: laravelphpunit

解决方案


推荐阅读