2011-01-30 18 views
8

Eclipse supporta la compilazione incrementale. Se salvi un file sorgente, esso compilerà i file modificati.È possibile eseguire test JUnit incrementale/automatizzato in Eclipse?

E 'possibile, dopo tale compilazione incrementale, eseguire anche i test JUnit dello stesso pacchetto e mostrare il fallimento nella visualizzazione errori. Quindi posso vedere il fallimento del test JUnit e la compilazione degli errori nella stessa vista senza azioni aggiuntive. Ci sono dei plugin che possono farlo?

+1

Penso che si possa scoprire rapidamente che una funzione del genere è fastidiosa e/o rallentata. –

+0

Dovrebbe solo eseguire il test della classe salvata. Se i test unitari vengono eseguiti più a lungo come compilatore, non si tratta di test funzionali unit test. Dovresti dividere i test di unità e funzionali. – Horcrux7

risposta

9

si deve guardare a questi plugin:

  • JUnit Max: Non libero, sviluppato da Kent Benk (uno degli uomini dietro la pratica del TDD);
  • MoreUnit: gratuito, ma essenzialmente dedicato ad aiutare a scrivere i test;
  • Infinitest: ora gratuito, questo plug-in è dedicato all'esecuzione dei test relativi ai file appena modificati.

Quindi, per quanto riguarda le tue esigenze, ti suggerisco di installare plugin MoreUnit e Infinitest.

+0

L'ultima volta che ho controllato, Infinitest era libero, ma solo per uso non commerciale. Sembra che ora sia completamente gratuito al 100%. Buono a sapersi, grazie! – MatrixFrog

+0

@ MatrixFrog Sì, davvero. Alcuni dei miei ex colleghi (che ora lavorano per algodeal - https://beta.algodeal.com/) ora stanno lavorando su questo plugin, e lo rendono gratuito, ospitato su GitHub. – romaintaz

0

È possibile eseguire tutti i test in un progetto utilizzando Alt+Shift+X,T. Penso che renderlo più automatizzato di questo potrebbe richiedere un serio aumento delle prestazioni. La compilazione incrementale sta compilando al massimo 1 file alla volta, ma stai parlando di eseguire potenzialmente centinaia di test.

+0

Non voglio eseguire tutti i test del progetto. Voglio eseguire solo il test relativo alla classe salvata. Abbiamo ca. 100 mila test JUnit. Questo funzionerà a lungo. – Horcrux7

2

Utilizzare ExternalToolBuilder.

Può essere attivato dalla modifica della sorgente.

C'è la funzione personalizzata Eclipse (integrate external tool builder) che può soddisfare le vostre necessità. Ma ha bisogno di uno sforzo extra per scrivere gli script che non ho mai usato. casi di test automatico non è un modo conveniente, almeno singolo clicca per vedere barra verde in Eclipse è sufficiente per me :)

+0

Abbiamo ca. 100 mila test JUnit. Voglio eseguire solo il sottoinsieme correlato alla classe corrente. Questa corsa dovrebbe essere di circa un secondo o meno. La selezione manuale del test e l'impostazione del parametro della riga di comando necessario per il mocking consumano molte ore e si dimenticheranno in molti casi. – Horcrux7

+0

JUnit4 offre una ricca scelta per eseguire sottoinsieme di tutti i casi di test. Usa: @RunWith (Suite.class) @ Suite.SuiteClasses ({ \t A.class, \t B.class, ... }) –

Problemi correlati