Вопрос

Я использую phpunit для модульных тестов, но когда фатальная ошибка срабатывает, скрипт умирает И у меня нет правильного вывода phpunit.

Я хотел бы, что выход PhPUnit остается правильно формирован, потому что он читается плагином для Eclipse. На самом деле фатальная ошибка останавливает phpunit и в Eclipse плагин ничего не может интерпретировать (потому что скрипт phpunit имел ошибка, а не обрабатывать ее).

Спасибо

Это было полезно?

Решение

Вам необходимо использовать функции процессы PHPUNIT - начните каждый тестовый набор в новом процессе.

phpunit --process-isolation ...

Это единственный способ убедиться, что фатальные ошибки не нарушают свой выход PhPUnit.

Время исполнения

Процесс изоляции умножает ваше время выполнения теста, потому что Для каждого единственного теста, Запускается новый экземпляр PHP, загрузка выполняется и т. Д.

Изменить эту ситуацию, вы можете запускать полные тестовые случаи в отдельном процессе (@runTestsInSeparateProcesses) или только один из них, как известно, иногда исчезнет (@runInSeparateProcess).

Другие советы

set_error_handler () не поможет вам там. Вы можете поймать фатальные ошибки, используя register_shutdown_function ()

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top