Symfony 3.1 + PhpUnit: об исключениях контроллера не сообщается

Я использую Symfony 3.1.9 и PhpUnit 5.6.5.

Всякий раз, когда в контроллере возникает исключение, оно обрабатывается Symfony, и трассировка стека отображается в представлениях.

Как я могу это исправить и сделать вывод phpunit исключением?

Мой конфиг phpunit:

<?xml version="1.0" encoding="UTF-8"?>

<!-- https://phpunit.de/manual/current/en/appendixes.configuration.html -->
<phpunit xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:noNamespaceSchemaLocation="http://schema.phpunit.de/4.8/phpunit.xsd"backupGlobals="false"colors="true"bootstrap="app/autoload.php">
<php>
<ini name="error_reporting" value="-1" />
<server name="KERNEL_DIR" value="app/" />
</php>

<testsuites>
<testsuite name="Project Test Suite">
<directory>tests</directory>
</testsuite>
</testsuites>

<filter>
<whitelist>
<directory>src</directory>
<exclude>
<directory>src/*Bundle/Resources</directory>
<directory>src/*/*Bundle/Resources</directory>
<directory>src/*/Bundle/*Bundle/Resources</directory>
</exclude>
</whitelist>
</filter>
</phpunit>

Изменить: Кажется, связано с тем, как ветка отрисовывает исключения в тесте и dev одинаково. Как указано в https://symfony.com/doc/current/configuration/environments.html :

Независимо от среды приложение Symfony может быть запущено с
режим отладки установлен в true или false. Это влияет на многие вещи в
приложения, такие как отображение трассировки стека на страницах ошибок или если кэш
файлы динамически перестраиваются при каждом запросе. Хотя не
требование, режим отладки, как правило, устанавливается в true для разработчиков и тестов
окружение и ложь для прод среды.

Теперь, как мы можем установить параметр kernel.debug в тесте?

0

Решение

На данный момент, кажется, лучший вариант — добавить строку в config_test.yml, чтобы отключить обработчик исключений для веток.

twig:
exception_controller: false
0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector