2010-02-27 32 views
10

Ho visto tutti gli esempi sul web e sembra davvero semplice. Ho un'app di bare-bone che mostra una stringa. Ho un progetto di test JUnit Android che ho creato durante la creazione dell'app (eclipse mi ha chiesto se volevo creare un'app di prova).Provare a eseguire test JUnit Android in Eclipse non riesce?

Quando eseguo l'applicazione di test (Esegui come --- JUnit Android) Vedo quanto segue nella console ....

[2010-02-27 00:45:03 - SimpleCalculatorTest] Avvio strumentazione android.test.InstrumentationTestRunner su dispositivo emulator-5554 [2010-02-27 00:45:12 - SimpleCalculatorTest] Test eseguito completo

Non vedo nessuno dei codici nel testcase che viene chiamato. La mia testcase è una classe che estende ActivityInstrumentationTestCase2. DDMS log spettacoli: 02-27 00: 44: 58,521: WARN/TestGrouping (1275): non valido pacchetto: '' non può essere trovato o non ha le prove

Tutte le idee? Ho provato tutto ...

risposta

10

Se si crea un nuovo ActivityInstrumentationTestCase2, è necessario un costruttore predefinito che punta alla classe che si desidera testare.

es:

public class TestappTest extends ActivityInstrumentationTestCase2<AppUnderTest> { 

    public TestappTest() { 
    super("my.package.app", AppUnderTest.class); 
    } 

    public void testApp() { 
     // Testcase 
    } 
} 
+4

Per chi legge questo super costruttore è ora deprecato. super (AppUnderTest.class) dovrebbe essere sufficiente – IcedDante

9

ho avuto lo stesso problema. Il motivo era il costruttore - è in qualche modo aveva un parametro come questo:

public SearchActivityTest(Class<SearchActivity> activityClass) { 
    super("com.example.app", SearchActivity.class); 
} 

Ma dovrebbe avere alcun parametro come questo:

public SearchActivityTest() { 
    super("com.example.app", SearchActivity.class); 
} 

ha funzionato per me.

Problemi correlati