J'ai une application Android simple avec quelques tests d'expresso. Je veux écrire une classe de base pour que toutes mes classes de test héritent de ses méthodes @beforeClass et @afterClass, mais le problème est que lorsque je le fais comme l'exemple de code ci-dessous, JUnit ne voit aucun test sur al. J'ai reçu le message Empty test suite.
. Quel est le problème?JUnit android test classinheritance
Exemple de code:
public class RealmTest {
protected static Realm realm;
@BeforeClass
public static void beforeClass() {
realm = Realm.getDefaultInstance();
realm.setAutoRefresh(true);
}
@AfterClass
public static void afterClass() {
realm.close();
}
}
@RunWith(AndroidJUnit4.class)
public class MainActivityTest extends RealmTest {
@Rule
public IntentsTestRule<MainActivity> activityTestRule = new IntentsTestRule<>(MainActivity.class);
@Test
public void startedFine() {
assertNotNull(realm);
onView(withId(R.id.button)).perform(click());
intended(hasComponent(new ComponentName(getTargetContext(), EducationActivity.class)));
}
}
Si je vais exécuter tous les tests, les tests de MainActivityTest ne fonctionnera pas. Merci pour votre aide, veuillez dire si des informations supplémentaires sont nécessaires.
Mettez ces deux méthodes dans MainActivityTest. Fonctionnent-ils – piotrek1543
avez-vous configuré 'testInstrumentationRunner' dans votre fichier' app/build.gradle' – piotrek1543