【发布时间】:2016-08-31 09:03:58
【问题描述】:
我有一个简单的 Android 应用程序和一些 espresso 测试。
我想编写一些基类,所以我的所有测试类都将继承它的@beforeClass 和@afterClass 方法,但问题是当我像下面的代码示例那样做时,JUnit 根本看不到任何测试。我收到了Empty test suite. 消息。有什么问题?
代码示例:
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)));
}
}
如果我运行所有测试,来自 MainActivityTest 的测试将不会运行。 感谢您的帮助,如果需要一些额外的信息,请说。
【问题讨论】:
-
把这两个方法放到MainActivityTest中。他们在工作吗
-
您是否在您的
app/build.gradle文件中设置了testInstrumentationRunner
标签: java android unit-testing junit android-espresso