2016-02-09 13 views
9

Desidero saltare un singolo test (ad esempio com.example.MyTest) quando si crea un progetto con Maven dalla riga di comando.Salta il test singolo con Maven con le opzioni della riga di comando

Sono a conoscenza di domande simili come this one, ma richiedono tutte o la modifica del codice sorgente o pom.xml. Mi piacerebbe fare senza modifiche. Come posso escludere un test utilizzando solo le opzioni della riga di comando?

Quello che ho provato finora dopo aver letto some documentation è

mvn clean install -Dtest="*,!com.example.MyTest" 

ma il test non è ancora saltato. Utilizzo la versione del plugin surefire 2.19 e JUnit 4.11.

risposta

9

Si scopre che (almeno in Surefire 2.19), lo schema di test non funziona con nomi di classe completi. Quindi la soluzione giusta è

mvn clean install -Dtest="*,!MyTest" 

senza il percorso del pacchetto.

In Surefire 2.19.1, è should be possible utilizzare nomi completi. Nelle versioni precedenti alla 2.19, nessuna sembra funzionare.

+1

Non ha funzionato per me :(Ecco come lo sto usando: 'test -Dlog4j.configuration = log4j-dm.xml -Dtest =" *,! Testname1Test,! Testname2Test,! Testname3Test,! Testname4Test "' – vianna77

+0

Quale versione di surefire stai usando? – Mifeet

+0

Versione: [INFO] --- maven-surefire-plugin: 2.12.4: test (default-test) – vianna77

Problemi correlati