Erste Schritte für Android-Tests mit Firebase Test Lab

Mit Firebase Test Lab kannst du deine App auf verschiedenen Geräten testen Konfigurationen. In diesem Startleitfaden finden Sie eine Anleitung für die Implementierung. folgen sowie eine Einführung in die Android-Angebote von Test Lab.

Informationen zu Kontingenten und Preismodellen für Test Lab finden Sie unter Nutzung, Kontingente und Preise.

Wichtige Konzepte

Wenn Sie einen Test oder eine Reihe von Testfällen auf ausgewählten Geräten und Konfigurationen ausführen, führt Test Lab den Test in einem Batch auf Ihrer App aus und zeigt die Ergebnisse dann als Testmatrix an.

Geräte × Testausführungen = Testmatrix

Gerät
Ein physisches oder virtuelles Gerät (nur Android), auf dem Sie einen Test ausführen, z. B. ein Smartphone, Tablet oder Wearable. Geräte in einer Testmatrix werden durch Gerätemodell, Betriebssystemversion, Bildschirmausrichtung und Sprache (auch bekannt als Geografie- und Spracheinstellungen).
Test, Testausführung
Ein Test oder eine Reihe von Testläufen, die auf einem Gerät ausgeführt werden sollen. Sie können einen Test durchführen, pro Gerät oder optional fragmentieren Sie den Test und führen die Testläufe auf verschiedenen Geräten.
Testmatrix
Enthält die Status und Testergebnisse für Ihre Testausführungen. Falls vorhanden die Testausführung in einer Matrix scheitert, die gesamte Matrix schlägt fehl.

Schritt 1: Test für das Hochladen in Test Lab vorbereiten

Verfügbare Testtypen

Sie können die folgenden Tests mit Test Lab ausführen. Hinweis: Alle Testtypen sind auf 45 Minuten auf physischen Geräten und 60 Minuten auf virtuellen Geräten beschränkt. Jede nicht abgefangene Ausnahme führt zu einem Testfehler.

  • Instrumentierungstest oder Instrumentierungstest: Ein Test, den Sie mithilfe der Espresso oder UI Automator Frameworks. Mit diesem Test können Sie explizite Behauptungen und überprüfen Sie die korrekte Funktionsweise AndroidJUnitRunnerAPIs zu verwenden.

  • Robo-Test: Ein automatisierter Test, bei dem die Benutzeroberfläche Ihrer App analysiert und dann methodisch durch Simulation von Nutzeraktivitäten untersucht wird, ohne dass Sie Code schreiben müssen. Besuchen Sie Weitere Informationen zu Robo-Tests

  • Spielschleifentest: Test, bei dem ein „Demomodus“ verwendet wird bis Spieleraktionen in Gaming-Apps simulieren. So können Sie schnell und skalierbar prüfen, ob Ihr Spiel für Nutzer eine gute Leistung erbringt. Wenn Sie sich für eine Mit dem Spielschleifentest können Sie:

    • Tests nativ in deiner Spiel-Engine schreiben

    • Vermeiden Sie es, denselben Code für verschiedene Benutzeroberflächen oder Tests zu schreiben. Frameworks

    • Optional mehrere Schleifen für eine einzige Testausführung erstellen Weitere Informationen finden Sie unter Informationen zu Spielschleifentests. Sie können Schleifen auch mithilfe von Labels organisieren, damit Sie und bestimmte Schleifen erneut auszuführen.

    Eine Anleitung zum Ausführen dieses Tests mit Test Lab finden Sie unter Spielschleifentest ausführen.

Tools zum Ausführen des Tests

Sie können die folgenden Tools für Ihren Test verwenden:

  • Empfohlen für neue Nutzer: Mit der Firebase-Konsole können Sie ein App und starten Sie den Test im Webbrowser. Weitere Informationen finden Sie unter Testen Sie mit der Firebase-Konsole. Dort finden Sie Anleitungen für mit diesem Tool testen.

  • Mit der Android Studio-Integration können Sie Ihre App testen, ohne die Entwicklungsumgebung zu verlassen. Siehe Test mit Android Studio um eine Anleitung zur Durchführung von Tests mit diesem Tool zu erhalten.

  • Mit der gcloud-Befehlszeile können Sie Tests interaktiv über die Befehlszeile ausführen. Sie eignet sich auch gut für Scripts im Rahmen Ihres automatisierten Build- und Testprozesses. Siehe Mit der gcloud CLI testen um eine Anleitung zur Durchführung von Tests mit diesem Tool zu erhalten.

Du kannst deine App auch kostenlos mit Test Lab testen, wenn du sie hochlädst und Veröffentlichen Sie die APK-Dateien Ihrer App im Play Store entweder mit der Alpha- oder Beta-Version. Weitere Informationen finden Sie unter Pre-Launch-Berichte zum Erkennen von Problemen verwenden und Robo-Tests.

Schritt 2: Testgerät auswählen

Test Lab unterstützt Tests mit verschiedenen Marken und Modellen von Android-Geräte, die in einem Google-Rechenzentrum installiert sind und ausgeführt werden. Test läuft am Geräte in „Test Lab“ helfen dir, Probleme zu erkennen, die beim Testen möglicherweise nicht auftreten deine App mithilfe von Emulatoren in Android Studio. Weitere Informationen finden Sie unter Verfügbare Geräte.

Schritt 3: Testergebnisse überprüfen

Unabhängig davon, wie Sie Ihre Tests initiieren, Test Lab und können online angesehen werden.

Die Zusammenfassung der Testergebnisse ist automatisch gespeichert und können in der Firebase-Konsole eingesehen werden. Sie enthält die relevantesten Daten für Ihren Test, darunter testfallspezifische Videos, Screenshots, die Anzahl der bestandenen, fehlgeschlagenen oder fehlerhaften Tests usw.

Die rohen Testergebnisse enthalten Testprotokolle und Details zu App-Fehlern und werden automatisch in einem Google Cloud-Bucket gespeichert. Wenn Sie einen Bucket angeben, für die Speicherkosten verantwortlich. Wenn Sie keinen Bucket angeben, Test Lab erstellt kostenlos eine für Sie.

Weitere Informationen finden Sie unter Analysieren Sie Firebase Test Lab-Ergebnisse.

Wenn Sie einen Test in Android Studio starten, können Sie die Testergebnisse auch in Ihrer Entwicklungsumgebung überprüfen.

Gerätebereinigung

Google nimmt die Sicherheit Ihrer App-Daten sehr ernst. Wir folgen branchenübliche Best Practices zum Entfernen von App-Daten und Zurücksetzen der Systemeinstellungen für physische Geräte nach jedem Testlauf, um sicherzustellen, um neue Tests durchzuführen. Bei Geräten, die wir mit einem benutzerdefinierten Wiederherstellungs-Image flashen können, gehen wir noch einen Schritt weiter und flashen diese Geräte zwischen den Testläufen.

Bei den von Test Lab verwendeten virtuellen Geräten werden Geräteinstanzen nach der Verwendung gelöscht, sodass für jeden Testlauf eine neue virtuelle Geräteinstanz verwendet wird.


Test Lab und Google Play-Dienste

Auf Test Lab Geräten läuft normalerweise die neueste Version von Google Play Services SDK. Bei manchen kann es jedoch nach einer neuen Version einige Tage dauern, bis sie aktualisiert werden. des SDK veröffentlicht wird. Beachten Sie, dass Kompatibilitätsprobleme bei bestimmte Geräte.

Testgeräten Zugriff auf private Backend-Server gewähren

Einige mobile Apps müssen mit privaten Backend-Diensten kommunizieren, um zu funktionieren beim Testen korrekt funktioniert. Wenn Ihre Backend-Server durch eine Firewall geschützt sind können Sie den Zugriff auf die physischen und virtuellen Geräte von Test Lab erlauben, indem Sie mithilfe der IP-Adressblöcke unten, um Routen durch Ihre Firewall.

Werbung auf Mobilgeräten

Test Lab bietet eine skalierbare Infrastruktur, mit der App-Tests automatisiert werden. Leider kann diese Funktion von schädlichen Apps missbraucht werden, betrügerische Werbeeinnahmen generieren.

So beheben Sie das Problem:

  • Wenn Sie Drittanbieter für digitale Werbung nutzen oder mit diesen zusammenarbeiten (z. B. Werbenetzwerke oder Demand-Side-Plattformen) sollten Sie bei der App-Entwicklung Testanzeigen statt echte Anzeigen verwenden. und Tests.

  • Wenn Sie in Ihrem Test echte Anzeigen verwenden müssen, benachrichtigen Sie die digitale Werbung Anbietern, mit denen Sie zusammenarbeiten, zum Herausfiltern von Umsätzen und allen entsprechenden Zugriffen generiert aus Test Lab mithilfe des Die IP-Adressblöcke weiter unten. Sie müssen keine von Google betriebenen Anzeigenanbieter benachrichtigen. Test Lab übernimmt das für Sie.

Von Test Lab Geräten verwendete IP-Adressen

Der gesamte von Test Lab-Geräten generierte Netzwerktraffic stammt aus Follower IP-Adressblöcke. Sie können diese Liste auch über die gcloud beta firebase test ip-blocks list Befehl in der gcloud-Befehlszeile. Die Liste wird aktualisiert am durchschnittlich einmal im Jahr.

Plattform und Gerätetyp CIDR-IP-Adressblock
Physische Android- und iOS-Geräte, virtuelle ARM-Geräte

70.32.128.0/19 (2022 hinzugefügt)

108.177.6.0/23

108.177.18.192/26 (02–2022 hinzugefügt)

108.177.29.64/27 (erweitert im Februar 2022)

108.177.31.160/27 (02–2022 hinzugefügt)

199.36.156.8/29 (202–2022 hinzugefügt)

199.36.156.16/28 (02–2022 hinzugefügt)

209.85.131.0/27 (02–2022 hinzugefügt)

2001:4860:1008::/48 (02.02.2022 hinzugefügt)

2001:4860:1018::/48 (02.02.2022 hinzugefügt)

2001:4860:1019::/48 (02.02.2022 hinzugefügt)

2001:4860:1020::/48 (02-2022 hinzugefügt)

2001:4860:1022::/48 (02-2022 hinzugefügt)

70.32.128.48/28 (April 2024 hinzugefügt)

Virtuelle Android-Geräte (nicht scharf)

34.68.194.64/29 (hinzugefügt am 11.11.2019)

34.69.234.64/29 (hinzugefügt am 11.11.2019)

34.73.34.72/29 (hinzugefügt am 11.11.2019)

34.73.178.72/29 (hinzugefügt am 11.11.2019)

34.74.10.72/29 (02-2022 hinzugefügt)

34.136.2.136/29 (202–2022 hinzugefügt)

34.136.50.136/29 (02–2022 hinzugefügt)

34.145.234.144/29 (02–2022 hinzugefügt)

35.192.160.56/29

35.196.166.80/29

35.196.169.240/29

35.203.128.0/28

35.234.176.160/28

35.243.2.0/27 (hinzugefügt: 7–2019)

35.245.243.240/29 (02–2022 hinzugefügt)

199.192.115.0/30

199.192.115.8/30

199.192.115.16/29

Nicht mehr verwendete Geräte-IP-Blöcke

74.125.122.32/29 (entfernt im Februar 2022)

216.239.44.24/29 (21.02.2022 entfernt)