Voglio conoscere il modo più efficace per verificare i messaggi di errore di PHP durante l'esecuzione di test automatici che interagiscono con un'applicazione PHP tramite un emulatore di browser.
Il motivo è: io uso Behat, Mink e Selenium / Webkit / etc per testare le mie applicazioni PHP nei seguenti modi:
- come test di accettazione, per assicurarsi che la funzionalità prevista esista
- come test end-to-end, per testare il successo dell'integrazione completa
E quindi mi sembra ovvio che la maggior parte dei test eseguiti da Behat / Mink dovrebbero anche analizzare le pagine su cui eseguono i test per errori PHP, avvisi, notifiche ecc., naturalmente.
Ma non è facile, per una serie di motivi:
- Il server su cui è in esecuzione l'applicazione PHP può generare errori in modo diverso, a seconda di fattori quali l'utilizzo di XDebug.
- Su un server di produzione, gli errori, gli avvisi e così via non verrebbero visualizzati affatto.
AFAIK, non si può fare nulla sul punto 2? Quindi, se volessi che i risultati del test Behat relativi all'analisi per gli errori PHP fossero significativi, sarebbe necessario farlo su un server in cui la configurazione deve mostrare errori.
Per quanto riguarda il punto 1 ho un'idea semplice su come ottenerlo : utilizzo esplicitamente di gestori di eccezioni e di errori all'interno dell'applicazione PHP, quindi se / quando vengono emessi, saranno in un formato che può essere facilmente analizzato e testato.
Sembra un'idea ragionevole, ma ha un cattivo odore a riguardo. Quindi vorrei sapere se :
- Esiste un altro modo per cercare più efficacemente errori nei test end-to-end
- Vado su questa faccenda nel modo sbagliato.