Я пытаюсь получить контекст, используя InstrumentationRegistry
, используя новые (er) androidx
библиотеки. androidx.test.core
содержит класс InstrumentationRegistry
, но выдает IllegalStateException
. Должен ли я что-то инициализировать? Я запустил новый свежий проект для Android.
class SomeRepositoryTest {
lateinit var context: Context
@Before
fun setUp() {
context = InstrumentationRegistry.getInstrumentation().targetContext
}
@Test
fun searchRepos() {
// Some Test
}
}
Зависимости:
android {
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
dependencies {
testImplementation 'junit:junit:4.12'
androidTestImplementation 'androidx.test:runner:1.2.0'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'
testImplementation group: 'androidx.test', name: 'core', version: '1.2.1-alpha02'
}
Ошибка:
java.lang.IllegalStateException: No instrumentation registered! Must run under a registering instrumentation.
at androidx.test.platform.app.InstrumentationRegistry.getInstrumentation(InstrumentationRegistry.java:45)
at nl.jimclermonts.myapplication.SomeRepositoryTest.setUp(SomeRepositoryTest.kt:14)