Come visualizzare l'output log4j in rapporti di prova infallibili
Domanda
Quando un test fallisce in Maven file xml il rapporto di prova infallibile in target/surefire-reports/TEST-<test-name>.xml
mostra solo il System.output
uscita standard o Errore standard System.err
Quando uso il JDK java.util.logging.Logger
tutti gli spettacoli di registrazione nel <system-err> tag
errore standard, ma non mostra quando uso log4j.
La registrazione con log4j sta funzionando benissimo attraverso un FileAppender e ConsoleAppender. Essa mostra in output della console pieno, ma non sui file rapporto di prova individuale.
- Posso configurare log4j per reindirizzare la sua uscita per
System.out
in modo che mostra in rerports infallibili? - Posso dire infallibile per mostrare anche la registrazione log4j di debug?
Soluzione 2
Aggiornamento del infallibile plug-in versione.
Usando la versione 2.9 l'uscita log4j appare in <system-out>
quando si utilizza il ConsoleAppender
Altri suggerimenti
-
Prima opzione:
Per la registrazione standard (System.out / System.err), si può avere il seguente output:
<plugin> <artifactId>maven-surefire-plugin</artifactId> <version>2.8.1</version> <configuration> <redirectTestOutputToFile>true</redirectTestOutputToFile> </configuration> </plugin>
Questo genererà file di output per ciascuna delle prove.
-
Seconda opzione:
Per una configurazione di log4j è possibile creare un log4j.xml custom / log4j.properties e semplicemente posizionarlo sotto src / test / risorse.