Fare Maven eseguire tutti i test, anche se alcuni non riescono
Domanda
Ho un progetto con diversi moduli. Quando tutti i test passano, prova Maven li gestisce.
Quando i test falliscono nel primo modulo, esperto di non continuerà al prossimo progetto. Ho testFailureIgnore impostata su true nella impostazioni infallibili, ma non aiuta.
Come faccio a fare Maven eseguire tutti i test?
Soluzione 2
Ho appena trovato il parametro "-fae", che fa sì che Maven per eseguire tutti i test e si ferma in caso di fallimento.
Altri suggerimenti
Dalla documentazione:
-fae
,--fail-at-end
Solo fallire la compilazione dopo; consentire a tutti non esposto all'urto costruisce per continuare
-fn
,--fail-never
non mancano mai la costruzione, a prescindere dal risultato del progetto
Quindi, se si stanno testando una modulo di quello che sei al sicuro utilizzando -fae
.
In caso contrario, se si dispone di più moduli, e se si desidera che tutti loro testate (anche quelli che dipendono dal modulo di test in mancanza), è necessario eseguire mvn clean install -fn
.
-fae
continuerà con il modulo che ha un test in mancanza (eseguirà tutti gli altri test), ma tutti i moduli che dipendono sarà saltata.
Si può provare con infallibile 2.6 e sia configurare infallibile con testFailureIgnore=true
. O sulla riga di comando:
mvn install -Dmaven.test.failure.ignore=true
Prova per aggiungere la seguente configurazione per l'infallibile plugin nella vostra pom.xml di progetto di primo livello :
<project>
[...]
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<testFailureIgnore>true</testFailureIgnore>
</configuration>
</plugin>
</plugins>
</build>
[...]
</project>
Una risposta rapida:
mvn -fn test
Funziona con progetti nidificato costruisce.