androidx.test.InstrumentationRegistry устарела - PullRequest
0 голосов
/ 22 октября 2018

переключено на AndroidX и получено устаревшим: import androidx.test.InstrumentationRegistry

, если я сделал следующий импорт: import androidx.test.platform.app.InstrumentationRegistry я не могу getContext()

ex: val context = InstrumentationRegistry.getContext()

В build.gradle:

androidTestImplementation 'androidx.test.ext:junit:1.0.0-beta02'
androidTestImplementation 'androidx.test:runner:1.1.0-beta02'

Ответы [ 4 ]

0 голосов
/ 24 мая 2019

InstrumentationRegistry.getInstrumentation().targetContext устарела.Используйте ApplicationProvider.getApplicationContext();.

0 голосов
/ 18 декабря 2018

Когда вы используете Android X, вы должны убедиться, что у вас есть следующее в файле build.gradle вашего приложения

androidTestImplementation 'androidx.test:core:1.1.0'
androidTestImplementation 'androidx.test.ext:junit:1.1.0'

Второй - убедиться, что вы используете правильный AndroidJUnit4 для использования вваши тесты.

Убедитесь, что вы импортируете оба из них.

import androidx.test.platform.app.InstrumentationRegistry
import androidx.test.ext.junit.runners.AndroidJUnit4

Теперь вместо использования val context = InstrumentationRegistry.getContext() вы можете использовать строку, показанную ниже

val context = InstrumentationRegistry.getInstrumentation().getTargetContext()
0 голосов
/ 12 марта 2019

Для использования Kotlin, чтобы получить Контекст:

InstrumentationRegistry.getInstrumentation().targetContext
0 голосов
/ 22 октября 2018

Вы можете использовать InstrumentationRegistry.getInstrumentation().targetContext в большинстве случаев.

Если вам нужно приложение, вы можете использовать ApplicationProvider.getApplicationContext<MyAppClass>()

, если у вас его еще нет, я думаю, что вы также новыйтестовая зависимость: androidTestImplementation 'androidx.test:core:1.0.0-beta02'

...