我正在使用Android Studio尝试测试我的活动。这是基本代码:
public class MyActivityTest extends ActivityUnitTestCase<MyActivity> {
public MyActivityTest() {
super(MyActivity.class);
}
@Override
protected void setUp() throws Exception {
super.setUp();
}
@SmallTest
public void testSomething() {
Assert.assertNotNull("something is null", null);
}
}
我希望这个测试用例失败。我试过的一切都过去了。这似乎是一个奇怪的问题,但我怎样才能使我的测试用例失败?我做错了什么?
答案 0 :(得分:0)
我设法使这个工作,有点。我在bug report上找到了这个:
我们正在弃用ActivityUnitTestCase。我们建议将业务逻辑移动到一个单独的类,并使用gradle unit test support(mockable android.jar)对其进行单元测试。
所以我扩展了ActivityInstrumentationTestCase2并将测试作为Instrumentation Test而不是单元测试运行。那很有效。这基本上就是我现在所拥有的:
public class MyActivityTest extends ActivityInstrumentationTestCase2<MyActivity> {
public MyActivityTest() {
super(MyActivity.class);
}
public void testSomething() throws Exception {
//test goes here
Assert.assertEquals(message, expectedObject, actualObject);
}
}
我仍然不确定为什么我会看到我之前的行为,但至少我现在可以测试了。以下是我的测试构建配置的屏幕截图: