2012-08-30 15 views
5

In base al documento this, i metodi @BeforeClass delle superclassi verranno eseguiti prima di quelli della classe corrente. Ma non succede nel mio caso.@BeforeClass metodo della classe padre non viene invocato

Sto usando junit 4.8.1.

Potrebbe dirmi cosa sto facendo in modo errato?

mia classe padre si presenta così:

public abstract class AbstractPromoterUnitTest extends TestCase { 
    @BeforeClass 
    public static void setUpOnce() { 
     // Do something here. 
    } 
} 

E 'bambino:

@RunWith(JUnit4.class) 
public abstract class NormalPromoterUnitTest extends AbstractPromoterUnitTest{ 
    @BeforeClass 
    public static void setUpOnce() { 
     // Do something here 2. 
    } 
} 

NormalPromoterUnitTest.setUpOnce() è chiamato. AbstractPromoterUnitTest.setUpOnce() non lo è.

risposta

8

Stai oscurando il metodo statico della classe astratta; nome uno di loro qualcosa di diverso.

+0

ah sì, è un metodo statico! Grazie! – expert

Problemi correlati