Yii2 не отлавливает исключения при тестировании через Codeception по умолчанию, потому что он устанавливает YI_DEBUG
значение false
во время выполнения тестовых сценариев. Это сделано для того, чтобы не отображать отладочную информацию во время выполнения тестов и сохранить результаты чистыми и понятными.
Однако, если вы хотите включить отлов исключений во время тестирования, вы можете настроить Yii2 для отображения отладочной информации.
Существует несколько способов сделать это. Вот некоторые из них:
1. В config/test.php файла проекта Yii2, вы можете установить значение YI_DEBUG
на true
. Например:
return [ // ... 'components' => [ // ... ], 'params' => [ // ... ], 'bootstrap' => [ // ... ], 'modules' => [ // ... ], 'params' => [ 'yiiDebug' => true, // ... ], ];
2. В фреймворке Codeception, вы можете настроить test.suite.yml файл, чтобы включить отладку во время выполнения тестов. Вы можете добавить Yii2
конфигурацию в параметры bootstrap
для соответствующего сценария тестирования. Например:
actor: Tester paths: tests: tests output: tests/_output data: tests/_data support: tests/_support settings: bootstrap: _bootstrap.php suite_class: 'yiicodeceptionTestCase' 'modules': enabled: - Asserts - Yii2: configFile: ../config/test.php
После настройки, Yii2 будет отлавливать исключения и отображать отладочную информацию при выполнении тестов через Codeception.
Обратите внимание, что включение отладочной информации при тестировании может замедлить процесс тестирования и может быть не безопасным в случае, если отладочная информация содержит конфиденциальные данные, такие как пароли или ключи API. Поэтому, следует быть аккуратным при использовании отладочной информации в тестовых сценариях.