Sto utilizzando jUnit per gestire i test di integrazione per un'applicazione che accede a un database. Poiché l'impostazione dei dati di test è un'operazione che richiede molto tempo, l'ho eseguita nel metodo @BeforeClass
, che viene eseguito solo una volta per classe di test (in contrasto con il metodo @Before
, che viene eseguito una volta per metodo di prova).Con jUnit 4, posso parametrizzare @BeforeClass?
Ora voglio provare alcune diverse permutazioni per la configurazione del livello dati, eseguendo tutti i miei test su ogni diversa configurazione. Questo sembra un uso naturale del test runner Parameterized
. Il problema è che Parameterized
fornisce i parametri al costruttore della classe e il metodo @BeforeClass
è astratto e viene chiamato prima del costruttore della classe.
Qualche domanda,
Vuol Parameterized
chiamata al metodo @BeforeClass
per ogni permutazione dei parametri, o lo fa chiamare solo una volta?
Se il metodo @BeforeClass
viene chiamato ripetutamente, esiste un modo per accedere ai valori dei parametri dall'interno di esso?
Se nessuno di questi, cosa suggerisce la gente come il miglior approccio alternativo a questo problema?
Vedere se http://code.google.com/p/junitparams/ può aiutare – Jayan
Quindi non c'è ancora modo di farlo? –
L'effetto può essere eseguito da un corridore di prova personalizzato. Tipicamente si sottoclasse BlockJUnit4ClassRunner. –