为什么运行phpunit时会出现最大函数嵌套级别错误?

为什么运行phpunit时会出现最大函数嵌套级别错误?,php,laravel,phpunit,xdebug,Php,Laravel,Phpunit,Xdebug,当我尝试运行phpunit时,出现以下错误 PHP Fatal error: Maximum function nesting level of '100' reached, aborting! in /Users/user/Development/Web/ProjectFlyer/vendor/laravel/framework/src/Illuminate/Database/ConnectionInterface.php on line 3 我有一个测试: <?php use I

当我尝试运行phpunit时,出现以下错误

PHP Fatal error:  Maximum function nesting level of '100' reached, aborting! in /Users/user/Development/Web/ProjectFlyer/vendor/laravel/framework/src/Illuminate/Database/ConnectionInterface.php on line 3
我有一个测试:

<?php

use Illuminate\Foundation\Testing\WithoutMiddleware;
use Illuminate\Foundation\Testing\DatabaseMigrations;
use Illuminate\Foundation\Testing\DatabaseTransactions;

class FlyersControllerTest extends TestCase
{
    /** @test */
    public function it_shows_the_form_to_create_a_new_flyer()
    {
        $this->visit('/flyers/create');
    }
}
这将产生一个失败的测试,因为显示路由正在覆盖用于创建的资源。相反,它给了我最大的函数嵌套级别错误

如果我修复了路由问题并运行phpunit,我会得到:

OK (1 test, 1 assertion)

我认为您的测试流程不完整,请快速查看这里,这不是它。我遵循的是laracasts的一个例子,在没有其他任何东西的情况下对他很好。为了便于讨论,我添加了->参见('Text in page');但是得到了相同的错误。您是否尝试在php.ini中提高xdebug.max_nesting_级别的值?或者,您是否可以检查xdebug是否正确加载?是否为此控制器设置了中间件?可能是auth中间件(或其他)正在创建重定向循环,或者只是web中间件
OK (1 test, 1 assertion)