Domanda

Io uso PHPUnit per i test unitari, ma quando un errore fatale viene attivato, lo script stampi e non ho uscita PHPUnit corretta.

Mi piacerebbe che i soggiorni di uscita PHPUnit correttamente formattato , poiché viene letto da un plugin per Eclipse. In realtà l'errore fatale arresta PHPUnit e in Eclipse il plugin non può interpretare nulla (perché lo script PHPUnit had un errore, invece di gestirlo).

Grazie

È stato utile?

Soluzione

È necessario utilizzare le caratteristiche di isolamento processo di PHPUnit - iniziare ogni suite di test in un nuovo processo

.
phpunit --process-isolation ...

Questo è l'unico modo per assicurarsi che gli errori fatali non rompere l'output phpunit.

Il tempo di esecuzione

moltiplica l'isolamento dei processi vostro tempo prova, perché per ogni singolo test , una nuova istanza di PHP viene avviato, il bootstrap viene eseguito etc.

Per modificare questa situazione, è possibile scegliere di eseguire casi di test completi in un processo separato (@runTestsInSeparateProcesses), o unici singoli che sono noti per la fatale a volte (@runInSeparateProcess).

Altri suggerimenti

set_error_handler () non vi aiuterà lì. È possibile individuare gli errori fatali utilizzando href="http://php.net/manual/en/function.register-shutdown-function.php" ()

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top