Ce guide explique comment installer et compiler Espresso à l'aide de SDK Manager. avec Gradle. Nous vous recommandons d'utiliser Android Studio.
Configurer votre environnement de test
Pour éviter tout problème, nous vous recommandons vivement de désactiver les appareils virtuels ou physiques utilisés pour les tests. Sur votre appareil, sous Paramètres > Options pour les développeurs, désactivez les trois paramètres suivants:
- Échelle animation fenêtres
- Échelle anim. transitions
- Échelle durée animation
Ajouter des dépendances Espresso
Pour ajouter des dépendances Espresso à votre projet, procédez comme suit:
- Ouvrez le fichier
build.gradle
de votre application. Il ne s'agit généralement pas du fichierbuild.gradle
de premier niveau, mais du fichierapp/build.gradle
. - Ajoutez les lignes suivantes dans les dépendances:
Groovy
androidTestImplementation 'androidx.test.espresso:espresso-core:3.6.1' androidTestImplementation 'androidx.test:runner:1.6.1' androidTestImplementation 'androidx.test:rules:1.6.1'
Kotlin
androidTestImplementation('androidx.test.espresso:espresso-core:3.6.1') androidTestImplementation('androidx.test:runner:1.6.1') androidTestImplementation('androidx.test:rules:1.6.1')
Affichez l'ensemble complet des dépendances Gradle.
Définir l'exécuteur d'instrumentation
Ajoutez au même fichier build.gradle
la ligne suivante dans
android.defaultConfig
:
Groovy
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
Kotlin
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
Exemple de fichier de compilation Gradle
Groovy
plugins { id 'com.android.application' } android { compileSdkVersion 33 defaultConfig { applicationId "com.my.awesome.app" minSdkVersion 21 targetSdkVersion 33 versionCode 1 versionName "1.0" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" } } dependencies { androidTestImplementation 'androidx.test:runner:1.6.1' androidTestImplementation 'androidx.test.espresso:espresso-core:3.6.1' }
Kotlin
plugins { id("com.android.application") } android { compileSdkVersion(33) defaultConfig { applicationId = "com.my.awesome.app" minSdkVersion(21) targetSdkVersion(33) versionCode = 1 versionName = "1.0" testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" } } dependencies { androidTestImplementation('androidx.test:runner:1.6.1') androidTestImplementation('androidx.test.espresso:espresso-core:3.6.1') }
Données analytiques
Pour nous assurer que nous sommes sur la bonne voie pour chaque nouvelle version, le test collecte des données analytiques. Plus précisément, il importe un hachage du package nom de l'application testée pour chaque appel. Cela nous permet de mesurer le nombre de packages uniques à l'aide d'Espresso et le volume d'utilisation.
Si vous ne souhaitez pas importer ces données, vous pouvez vous désinscrire en incluant le
disableAnalytics
dans votre commande d'instrumentation:
adb shell am instrument -e disableAnalytics true
Ajouter le premier test
Android Studio crée des tests par défaut dans
src/androidTest/java/com.example.package/
Exemple de test JUnit4 utilisant des règles:
Kotlin
@RunWith(AndroidJUnit4::class) @LargeTest class HelloWorldEspressoTest { @get:Rule val activityRule = ActivityScenarioRule(MainActivity::class.java) @Test fun listGoesOverTheFold() { onView(withText("Hello world!")).check(matches(isDisplayed())) } }
Java
@RunWith(AndroidJUnit4.class) @LargeTest public class HelloWorldEspressoTest { @Rule public ActivityScenarioRule<MainActivity> activityRule = new ActivityScenarioRule<>(MainActivity.class); @Test public void listGoesOverTheFold() { onView(withText("Hello world!")).check(matches(isDisplayed())); } }
Exécuter des tests
Vous pouvez exécuter vos tests dans Android Studio ou à partir de la ligne de commande.
Dans Android Studio
Pour créer une configuration de test dans Android Studio, procédez comme suit:
- Ouvrez Exécuter > Modifier les configurations.
- Ajoutez une configuration de tests Android.
- Choisissez un module.
- Ajoutez un exécuteur d'instrumentation spécifique:
androidx.test.runner.AndroidJUnitRunner
- Exécutez la configuration que vous venez de créer.
Depuis la ligne de commande
Exécutez la commande Gradle suivante:
./gradlew connectedAndroidTest