php - mostrar - or die mysqli_error
PHPUnit: manejo de errores fatales (2)
Utilizo PHPUnit para pruebas unitarias, pero cuando se desencadena un error fatal , el script muere y no tengo una salida PHPUnit correcta.
Me gustaría que la salida de PHPUnit se mantenga correctamente formateada , ya que se lee mediante un complemento para Eclipse. En realidad, el error fatal detiene PHPUnit y en Eclipse el complemento no puede interpretar nada (porque el script PHPUnit tenía un error, en lugar de manejarlo).
Gracias
Debe utilizar las funciones de aislamiento de procesos de PHPUnit: inicie cada conjunto de pruebas en un nuevo proceso.
phpunit --process-isolation ...
Esta es la única forma de asegurarse de que los errores fatales no interrumpan la salida de su phpunit.
Tiempo de ejecución
El aislamiento del proceso multiplica el tiempo de ejecución de la prueba, ya que para cada prueba individual , se inicia una nueva instancia de PHP, se ejecuta el programa de arranque, etc.
Para corregir esta situación, puede optar por ejecutar casos de prueba completos en un proceso separado ( @runTestsInSeparateProcesses
), o solo en casos únicos que se sabe que son fatales ( @runInSeparateProcess
).
set_error_handler () no te ayudará allí. Puede detectar errores fatales usando register_shutdown_function()