2014-09-05 3 views
1

Я создал один тестовый пример в папке androidTest в MyHomeActivityTest.Java в /app/src/androidTest/java/MyHomeActivityTest.javaошибка во время работы нож для масла TestCases в androidstudio

И у меня есть один класс HomeActivity.java в /app/src/main/java/HomeActivity.java

В моем классе HomeActivity.java я использую butterknife для просмотра инъекций. Я запускаю тестовые примеры для HomeActivity в MyHomeActivityTest.java.

Но когда я запускаю тестовые примеры, тесты работают нормально, но при получении NoClassDefFound Error для butterknife.

Мои классы проекта являются

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()); 
    } 

} 

build.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.

ответ

1

Попробуйте добавить ButterKnife Dependencies в свою папку AndroidTest.

+0

Я попытался добавить тестовые зависимости в папку зависимостей, как этот androidTestcompile 'com.jakewharton: butterknife: 5.1.1', но все равно никакого результата! такая же ошибка – anand