73 votes

androidx.test.InstrumentationRegistry est obsolète

Passé à AndroidX et reçu obsolète: import androidx.test.InstrumentationRegistry .

Si j'ai fait la prochaine importation: import androidx.test.platform.app.InstrumentationRegistry je ne peux pas utiliser getContext() .

Ex: val context = InstrumentationRegistry.getContext() .

En build.gradle :

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

112voto

karuto Points 1128

Vous pouvez utiliser InstrumentationRegistry.getInstrumentation().getTargetContext() dans la plupart des cas à partir de androidx.test.platform.app.InstrumentationRegistry .

Si vous avez besoin de l'application, vous pouvez utiliser ApplicationProvider.getApplicationContext<MyAppClass>() .

Si vous ne l'avez pas déjà fait, je pense que vous pouvez également utiliser la nouvelle dépendance de test: androidTestImplementation 'androidx.test:core:1.0.0-beta02' .

57voto

Mark O'Sullivan Points 1895

Lorsque vous utilisez Android X, vous devez vous assurer que vous disposez des éléments suivants dans le fichier build.gradle de votre application

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

La deuxième consiste à vous assurer que vous disposez de la bonne AndroidJUnit4 à utiliser dans vos tests.

Assurez-vous d'importer les deux.

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

Maintenant, au lieu d'utiliser val context = InstrumentationRegistry.getContext() vous pouvez utiliser la ligne ci-dessous

 val context = InstrumentationRegistry.getInstrumentation().getTargetContext()

13voto

Akgun Studio Points 101

Le code suivant est désormais obsolète:

 Context context = InstrumentationRegistry.getInstrumentation().getTargetContext();

Utilisez plutôt:

 Context context = ApplicationProvider.getApplicationContext();

4voto

lomza Points 1763

Pour l'utilisation de Kotlin, afin d'obtenir le contexte:

 InstrumentationRegistry.getInstrumentation().targetContext

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X