2014-11-28 8 views
7

Qualcuno sa come affrontarlo.Runwith multipla per una classe di test junit

@RunWith(SpringJUnit4ClassRunner.class) 
@RunWith(Parametrized.class) 

@ContextConfiguration("/META-INF/blah-spring-test.xml") 
public class BlahTest 
.. 

quindi voglio avere un test di primavera la natura e allo stesso tempo vuole avere parametrizzato al fine di evitare la duplicazione del codice ...

+4

Duplicato: http://stackoverflow.com/questions/24431427/multiple-runwith-statements-in-junit. –

+3

Suggerirei che questo non è esattamente un duplicato in quanto i corridori sono diversi. –

risposta

4

Non è possibile utilizzare due corridori come indicato nella commentato inviare. È necessario utilizzare il corridore Parameterized come utilizzare Spring's TestContextManager per caricare il contesto Spring.

@Before 
public void before() throws Exception { 
    new TestContextManager(getClass()).prepareTestInstance(this); 
} 
0

Al Spring Framework 4.2, test di integrazione JUnit basati possono ora essere eseguite con regole JUnit invece del SpringJUnit4ClassRunner. Ciò consente di eseguire test di integrazione basati su Spring con runner alternativi come Jdi JUnit o di terze parti come lo MockitoJUnitRunner. Vedi maggiori dettagli su spring doc.

Problemi correlati