我在 /app/src/androidTest/java/MyHomeActivityTest.java 中的 androidTest 文件夹中创建了一个测试用例作为 MyHomeActivityTest.Java
我在 /app/src/main/java/HomeActivity.java 中有一个 HomeActivity.java 类
在我的 HomeActivity.java 类中,我使用黄油刀进行视图注入。我正在 MyHomeActivityTest.java 中运行 HomeActivity 的测试用例。
但是当我运行测试用例时,测试运行良好,但出现黄油刀的 NoClassDefFound 错误。
我的项目课程是
MyHomeActivityTest.java
public class HomeActivityTest extends ActivityInstrumentationTestCase2<HomeActivity> {
private Solo solo;
public HomeActivityTest() {
super(HomeActivity.class);
}
public void setUp() throws Exception {
super.setUp();
solo = new Solo(getInstrumentation());
getActivity();
}
@Override
public void tearDown() throws Exception {
solo.finishOpenedActivities();
super.tearDown();
}
public void testRun() {
solo.assertCurrentActivity("Home activity class",HomeActivity.class);
final LinearLayout homeScreen =
(LinearLayout) solo.getCurrentActivity().findViewById(R.id.home_screen);
assertEquals(View.GONE, homeScreen.getVisibility());
}
}
构建.gradle
dependencies{
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.jakewharton:butterknife:5.1.1'
compile 'com.squareup.picasso:picasso:1.1.1'
androidTestCompile 'com.jayway.android.robotium:robotium-solo:5.1'
}
一旦我运行 MyHomeActivityTest 类,它就会给我 NoClassDefFoundError,因为它的超类是 HomeActivity.class,它使用的是 butterKnife。