2016-08-26 1 views
1

У меня есть приложение, созданное с помощью Retorift2 + Dagger2. Я начал писать тесты Android UI, используя Espresso. Чтобы дождаться вызовов в сети, мне нужно зарегистрировать IdlingResource. Я добавил зависимость от OkHttp3IdlingResource.Inject OkHttp using dagger2 в классе AndroidTest для регенерации OkHttp3IdlingResource

мне нужно Подайте OkHttp в моем тестовом классе, но AppComponent не в том же каталоге источника, так что я не могу просто добавить

void inject(RegistrationLoginUiTest activity); 

К моему компоненту.

Как я могу получить OkHttp из графика зависимости в моем тестовом классе?

Это единственный способ создать TestAppComponent и заменить его на AppComponent?

+0

добавить в 'сборки. gradle'-зависимые файлы: 'androidTestCompile 'javax.inject: javax.inject: 1'' – piotrek1543

+0

, затем используйте методы' обеспечивать ... '. Сразу после того, как 'inject' устанавливается так: OkHtttp ok = .... inject (RegistrationLoginUiTest activity) .provideOkHttpCLient()'. – piotrek1543

ответ

0

Я выяснял, что в любом случае, если я хочу, чтобы ввести тестовый класс, я должен создать TestAppComponent, где я должен добавить строку:

void inject(RegistrationLoginUiTest activity); 

А потом поменять TestAppComponent с AppComponent

Смежные вопросы