Почему PHPUnit скрывает обратную линию xdebug?

У меня установлены PHPUnit и xdebug, а в моих файлах php.ini для CLI у меня есть:

display_errors = On xdebug.default_enable = 1 

Я проверил, что обратная трассировка xdebug печатается, когда я создаю ошибку с помощью интерактивной консоли, но когда возникает ошибка при запуске phpunit, нет обратной линии?

Что происходит с задним ходом? Является ли phpunit скрытием от меня? Есть ли какие-то настройки, которые мне не хватает?

Благодаря!

    Что происходит с задним ходом? Является ли phpunit скрытием от меня?

    Да, PHPUnit отключает xdebug, по крайней мере, эти трассы (вызывая xdebug_disable() Docs ).

    Есть ли какие-то настройки, которые мне не хватает?

    Вы можете добавить файл начальной загрузки, в который вы снова включите его с помощью xdebug_enable() Docs . Это действительно работает, но покажет вам трассировку стека на любом исключенном исключении (пойманное или неотображенное).

    См. Также: Проблема # 221 PHPUnit отключает xdebug , есть еще одна установка ini:

    sebastianbergmann : Проблема заключается в xdebug.show_exception_trace конфигурации xdebug.show_exception_trace . Когда установлено значение 1 , это будет «показывать трассировку стека всякий раз, когда возникает исключение», даже если это исключение действительно поймано ». Такое поведение прерывает вывод PHPUnit.

    Теперь, если я правильно помню, Derick рекомендовал использовать xdebug_disable(); over ini_set('xdebug.show_exception_trace', 0); ,

    Это потому, что модульные тесты с phpunit запускаются с консоли, которая является приложением CLI. Вы должны иметь возможность запускать его с помощью:

     php -dhtml_errors=1 `which phpunit` yourteststuff.