2016-08-26 3 views
1

나는 Retorift2 + Dagger2로 빌드 된 앱을 가지고 있습니다. 나는 Espresso를 사용하여 Android UI 테스트를 작성하기 시작했다. Netwoking 호출 대기 IdlingResource를 등록해야합니다. 종속성을 OkHttp3IdlingResource에 추가했습니다.AndroidHest 클래스에서 dagger2를 사용하여 OkHttp를 등록하여 다시 등록하십시오. OkHttp3IdlingResource

나는 내 테스트 클래스의 OkHttp을 주입해야하지만 AppComponent는 같은 소스 디렉토리에없는 정도로 난 그냥 내 구성 요소에

void inject(RegistrationLoginUiTest activity); 

를 추가 할 수 없습니다.

의존성 그래프에서 내 테스트 클래스로 OkHttp를 가져올 수 있습니까?

TestAppComponent를 만들고 AppComponent로 바꿀 수있는 유일한 방법은 무엇입니까?

+0

와 TestAppComponent을 교환합니다. 'androidTestCompile'javax.inject : javax.inject : 1 '' – piotrek1543

+0

그런 다음'provide ...'메소드를 사용하십시오. 이'OkHtttp ok = .... inject (RegistrationLoginUiTest 활동) .provideOkHttpCLient()'와 같이'inject '설정 직후. – piotrek1543

답변

0

난 내가 TestAppComponent을 만들어야합니다 테스트 클래스를 주입 할 경우 어떤 경우에 나는 줄을 추가해야하는 위치 것을 정리 한 :

void inject(RegistrationLoginUiTest activity); 

그리고 빌드`에 추가 AppComponent