Durante la scrittura dei test, mi piacerebbe eseguirli singolarmente. Ovunque, dal momento in cui sono passato dal builder Java Eclipse predefinito a Maven, questo non è più possibile. Osservazioni:Esecuzione di un singolo test JUnit4 in Eclipse con Maven
Fino ad oggi ho potuto aprire un file sorgente di test JUnit e selezionare
Run as | JUnit test
dalla barra degli strumenti. Prima di migrare a Maven, Eclipse ha costruito il test dell'unità quando necessario.Dal momento che Maven, ottengo un
ClassNotFoundException
nel caso in cui non ho compilato esplicitamente i test prima. Posso aggirare questo se seleziono il POM e faccioRun as | Maven test
. Questo compilerà i test ed eseguirà tutti i test.Se si seleziona di nuovo il test dell'unità e si seleziona
Run as | JUnit test
dalla barra degli strumenti, verrà eseguito il test.
Dal momento che questo è troppo scomodo, mi piacerebbe il comportamento "vecchio" avanti e credo che questo dovrebbe essere solo un problema di configurazione.
devo
- leggere Running a single test in Eclipse, ma descrive un problema senza Maven. Fondamentalmente, il comportamento atteso è quello che avevo prima.
- leggi Running JUnit tests with Maven under Eclipse è quello che attualmente ho. Ho Surefire e posso eseguire tutti i test quando si seleziona il POM.
- mia Surefire version is 2.18
- convertito struttura di directory del mio progetto al layout predefinito Maven (che non era prima)
- Running a single test in Maven - No tests were executed non è applicabile, perché voglio per eseguire i test di Eclipse, non dalla linea di comando.
- [x] costruire le autmatically abilitato
- [x] Maven Project Builder è configurato nelle proprietà del progetto
- Il mailing list ferma irrisolta
- leggere su Surefire arguments
sto dando ora.
Come posso eseguire un refactoring efficiente di colore rosso-verde, ovvero eseguire un solo test di unità alla volta senza aggiungere una configurazione di esecuzione per ogni singolo test?
In generale questo è possibile. Penso che tu abbia un problema di configurazione con l'integrazione di Maven/Eclipse. Entrambi (Maven ed Eclipse) utilizzano la stessa directory di destinazione (ad esempio, dove sono memorizzati i file .class)? – Jan
@Jan: In Java Build File, ho "Default output folder" impostato su/target/classes. Le cartelle di origine puntano lì (/ src/main/java,/src/main/resources) eccetto le unit test (src/test/java) che puntano a/target/test-classes. –
Nel mio POM ho rimosso e specifici nomi di directory, quindi crea anche in/target/classes e/target/test-classes. –