我正在使用 Android Studio,我需要在我的项目中添加一个单元测试。
我阅读了各种教程,但没有任何帮助。
我的问题是:
TestXMLParser.java:
public class TestXMLParser extends ActivityInstrumentationTestCase2<HomePageActivity> {
public TestXMLParser(Class<HomePageActivity> activityClass) {
super(activityClass);
}
@Override
public void setUp() throws Exception {
super.setUp();
//Controller.init((Activity)getContext());
}
@Override
public void tearDown() throws Exception {
super.tearDown();
}
public void testTrue() throws Exception {
assertTrue(true);
}
...
}
当我运行它时,我看到这条消息:
junit.framework.AssertionFailedError: Class cz.cvut.kosapp.jUnitTests.TestXMLParser has no public constructor TestCase(String name) or TestCase()
at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:190)
at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:175)
at android.test.InstrumentationTestRunner.onStart(InstrumentationTestRunner.java:555)
at android.app.Instrumentation$InstrumentationThread.run(Instrumentation.java:1661)
我真的不知道为什么。其他 jUnit 测试运行良好,例如当我使用:
public class TestXMLParser extends AndroidTestCase { ...
在标题中,这可以正常工作并且测试运行正常。
但我需要使用上下文(作为一个活动)来运行其他代码(在控制器类中)。
你知道如何修复它吗?
谢谢您的意见。