È possibile eseguire una generazione di test Maven (mvn clean test
) in un progetto multi-modulo maven e saltare/ignorare il test di un particolare modulo? come -Dmaven.test.skip=true
ma per un particolare modulo e non tutti i moduli? Non voglio cambiare il surefire <configuration>
per includere <skipTests>true</skipTests>
per il modulo che voglio saltare per i test. Volevo sapere se questo può essere fatto dalla riga di comando. Ho bisogno di questo perché nel mio progetto ho molti moduli e in particolare uno o due impiegano molto tempo per eseguire il test, quindi quando voglio testare solo un paio di moduli mi piacerebbe saltare questo tempo prendendo moduli a cui non ho fatto qualsiasi cambiamento.Ignora un modulo durante la generazione di test maven per il progetto multi-modulo maven
risposta
È davvero un problema modificare la configurazione del plugin surefire? Perché si potrebbe cambiare una volta solo nel modulo ...
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.12</version>
<configuration>
<skipTests>${skip.foo.module.tests}</skipTests>
</configuration>
</plugin>
</plugins>
</build>
... e delegare il valore true/false del tag skipTests a una proprietà Maven, attivato da un profilo dedicato:
<properties>
<skip.foo.module.tests>false</skip.foo.module.tests>
</properties>
<profiles>
<profile>
<id>SKIP_FOO_MODULE_TESTS</id>
<properties>
<skip.foo.module.tests>true</skip.foo.module.tests>
</properties>
</profile>
</profiles>
in modo che si potrebbe disattivare le prove in modulo Foo con la riga di comando:
mvn prova pulita -P SKIP_FOO_MODULE_TESTS
Grazie Yanflea. Anche se questo non era esattamente quello che volevo, ma questo funziona per me. Con questo approccio posso avere un profilo alla volta, quindi nel caso in cui volessi saltare i test per più di un modulo, non posso. Ma comunque sarebbe un po 'troppo. – Jay
I tuoi moduli possono condividere lo stesso padre gen, in cui definisci i tuoi profili. Cosa ti impedisce di utilizzare lo stesso profilo per saltare i test su diversi moduli figlio contemporaneamente? – Yanflea
Funzionerà solo se voglio saltare gli stessi moduli tutto il tempo. Quando sto sviluppando, qualche volta apporto il cambiamento al modulo-1 che non influenza il modulo-7 e il modulo-9, quindi vorrei saltarlo, ma in un altro momento se apporto modifiche al modulo-3, che influenza modulo-7, ma non modulo-9, in tal caso vorrei saltare solo il modulo-9. Per tali scenari, la condivisione dei profili in genitore non funzionerà. Ora non voglio inquinare il mio genitore con tutti i tipi di profili saltando i test per diversi moduli e combinazioni. – Jay
È possibile farlo con un profilo che ha ignorato la configurazione di surefire. Ciò ti consentirebbe di mantenere il test in esecuzione la maggior parte del tempo, ma quando volevi saltare i test per uno dei moduli a volte, potresti invocare quel profilo. È quindi possibile escludere tutti i test utilizzando i test di salto oppure è possibile utilizzare l'opzione escludi per escludere solo uno o due test di lunga durata.
- 1. Ordine di costruzione del progetto multimodulo Maven?
- 2. Come evitare il doppio biforcarsi durante la generazione di javadoc aggregati in un progetto multimodulo
- 3. Maven - Ignora classi di test di costruzione
- 4. Dipendenza del test Maven nel progetto multi-modulo
- 5. Come ristrutturare il progetto multi-modulo Maven?
- 6. Maven Generazione di siti aggregati
- 7. maven :: esegui solo test singolo nel progetto multi-modulo
- 8. Generazione codice in Maven
- 9. Jacoco Maven multi modulo copertura del progetto
- 10. Custom Maven Archetype o alternative alla generazione del progetto
- 11. Progetto di progetto Maven - condivisione di un progetto comune
- 12. Maven progetto multi-modulo e Jenkins
- 13. Salta un sottomodulo durante una build Maven
- 14. Progetto Maven multi-modulo e jetty: eseguire
- 15. Utilizzo di Maven per il progetto Coldfusion
- 16. Maven copia risorse nel progetto multi-modulo
- 17. plug-in sito Maven che non distribuisce sottoprogetti in un progetto multimodulo o che genera index.html
- 18. Profilo Maven per modulo singolo
- 19. Generazione di UUID tramite Maven
- 20. logback-test.xml e multi-modulo di progetto Maven
- 21. Plugin Maven cobertura - un report per il progetto multimodule
- 22. Obiettivi Ignora e Maven Git
- 23. Impossibile eseguire il sonar per elaborare i file exec jacoco per un progetto multi-modulo maven
- 24. Generazione codice sorgente Java Maven per Hibernate
- 25. Come aggiungere un nuovo modulo maven a un progetto maven esistente
- 26. Intellij progetto multi-modulo maven, l'aggiornamento in uno dei sottomoduli non è propogato per la guerra
- 27. Quando dovrei usare il progetto multi modulo maven?
- 28. Il plugin di rilascio di Maven ignora il releaseProfile
- 29. Creare un albero di moduli progetto maven?
- 30. Spostare un file di testo nella cartella di destinazione durante la compilazione di un progetto Maven
Sì. Hai bisogno di leggere su [profili maven] (http://maven.apache.org/guides/introduction/introduction-to-profiles.html) –