In diesem Handbuch wird die Installation und Erstellung von Espresso mithilfe des SDK Manager beschrieben. mit Gradle. Wir empfehlen Android Studio.
Testumgebung einrichten
Um instabile Animationen zu vermeiden, sollten Sie Systemanimationen Die virtuellen oder physischen Geräte, die für den Test verwendet werden. Gehen Sie auf Ihrem Gerät unter Einstellungen > Entwickleroptionen die folgenden drei Einstellungen deaktivieren:
- Fensteranimationsfaktor
- Übergangsanimationsfaktor
- Animationsdauerfaktor
Espresso-Abhängigkeiten hinzufügen
Führen Sie die folgenden Schritte aus, um Espresso-Abhängigkeiten zu Ihrem Projekt hinzuzufügen:
- Öffnen Sie die
build.gradle
-Datei Ihrer App. Dies ist normalerweise nicht die Dateibuild.gradle
der obersten Ebene, sondernapp/build.gradle
. - Fügen Sie innerhalb der Abhängigkeiten die folgenden Zeilen hinzu:
Cool
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')
Vollständige Liste der Gradle-Abhängigkeiten
Instrumentierungs-Runner festlegen
Fügen Sie in derselben build.gradle
-Datei die folgende Zeile ein:
android.defaultConfig
:
Cool
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
Kotlin
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
Gradle-Build-Beispieldatei
Cool
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') }
Analysezwecke
Um sicherzustellen, dass wir mit jeder neuen Veröffentlichung auf dem richtigen Weg sind, wurde der Test runner sammelt Analysen. Genauer gesagt, wird ein Hash des Pakets hochgeladen, Name der zu testenden Anwendung für jeden Aufruf. So können wir die Anzahl einzelner Pakete mit Espresso sowie die Anzahl der der Nutzung.
Wenn Sie diese Daten nicht hochladen möchten, können Sie sie deaktivieren, indem Sie den
disableAnalytics
-Argument in Ihrem Instrumentierungsbefehl:
adb shell am instrument -e disableAnalytics true
Ersten Test hinzufügen
Android Studio erstellt Tests standardmäßig in
src/androidTest/java/com.example.package/
Beispiel für einen JUnit4-Test mit Regeln:
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())); } }
Tests ausführen
Sie können Ihre Tests in Android Studio oder über die Befehlszeile ausführen.
In Android Studio
Führen Sie die folgenden Schritte aus, um eine Testkonfiguration in Android Studio zu erstellen:
- Öffnen Sie Ausführen > Konfigurationen bearbeiten.
- Fügen Sie eine neue Android-Testkonfiguration hinzu.
- Wählen Sie ein Modul aus.
- Einen bestimmten Instrumentierungs-Runner hinzufügen:
androidx.test.runner.AndroidJUnitRunner
- Führen Sie die neu erstellte Konfiguration aus.
Über die Befehlszeile
Führen Sie den folgenden Gradle-Befehl aus:
./gradlew connectedAndroidTest