Это возможно начиная с Android 9,
проверить эту статью
В старых версиях вам нужно создать отдельный компонент для теста.
class TestApplication : MyApplication() {
override val component: TestComponent by lazy {
DaggerTestComponent.builder().applicationModule(ApplicationModule(this)).build()
}
}
Пользовательский бегун:
class TestRunner : AndroidJUnitRunner() {
@Throws(InstantiationException::class, IllegalAccessException::class, ClassNotFoundException::class)
override fun newApplication(cl: ClassLoader, className: String, context: Context): Application {
return super.newApplication(cl, TestApplication::class.java.name, context)
}
}
и регистрация бегуна в файле build.gradle
:
defaultConfig {
testInstrumentationRunner "com.package.TestRunner"
}
В TestComponent
теперь вы можете присоединить модуль с тестовой реализацией RegistrationPresenter