Beginnen Sie mit dem Testen für Android mit Firebase Test Lab

Mit Firebase Test Lab können Sie Ihre App auf einer Reihe von Geräten und Konfigurationen testen. Dieser Leitfaden für die ersten Schritte bietet Ihnen einen Implementierungspfad sowie eine Einführung in die Android-Angebote von Test Lab.

Weitere Informationen zum Test Lab Quoten und Preispläne finden Verwendung, Quotas, und Pricing .

Schlüssel Konzepte

Wenn Sie einen Test oder eine Reihe von Testfällen gegen Geräte und Konfigurationen ausgeführt haben Sie ausgewählt haben , läuft Test Lab der Test gegen Ihre Anwendung in einer Charge, dann die Ergebnisse als Testmatrix zeigt.

Geräte × Testausführungen = Testmatrix

Gerät
Ein physisches oder virtuelles Gerät (nur Android), auf dem Sie einen Test durchführen, z. B. ein Telefon, Tablet oder tragbares Gerät. Geräte in einer Testmatrix werden anhand des Gerätemodells, der Betriebssystemversion, der Bildschirmausrichtung und des Gebietsschemas (auch als Geografie- und Spracheinstellungen bezeichnet) identifiziert.
Test, Testdurchführung
Ein Test (oder eine Reihe von Testfällen), der auf einem Gerät ausgeführt werden soll. Sie können einen Test pro Gerät ausführen oder den Test optional teilen und seine Testfälle auf verschiedenen Geräten ausführen.
Testmatrix
Enthält die Status und Testergebnisse für Ihre Testausführungen. Wenn eine Testausführung in einer Matrix fehlschlägt, schlägt die gesamte Matrix fehl.

Schritt 1: Bereiten Sie Ihren Test für das Hochladen zu Testlabor

Verfügbare Testtypen

Sie können die folgenden Tests mit Test Lab ausführen. Beachten Sie, dass alle Testtypen auf eine Ausführung von 45 Minuten auf physischen Geräten und 60 Minuten auf virtuellen Geräten beschränkt sind. Jede nicht abgefangene Ausnahme führt zu einem Testfehler.

  • Instrumentation Test oder instrumentierten Unit - Test: Ein Test , den Sie geschrieben haben , die mit Espresso oder UI Automator 2.0 Frameworks. Mit diesem Test können Sie explizite Aussagen über den Zustand Ihrer App machen , um die korrekte Funktionalität verwendet zu überprüfen AndroidJUnitRunnerAPIs .

  • Robo - Test: Ein automatisierter Test, die App-UI analysiert und untersucht sie dann methodisch durch Benutzeraktivitäten zu simulieren, ohne dass Sie einen Code zu schreiben. Besuche über Robo - Tests für weitere Informationen.

  • Spiel Schleifentest: Ein Test, der in Spiele - Apps einen „Demo - Modus“ zu simulieren Spieler Aktionen verwendet. Dies ist eine schnelle und skalierbare Methode, um zu überprüfen, ob Ihr Spiel für die Benutzer gut funktioniert. Wenn Sie sich für die Durchführung eines Game Loop-Tests entscheiden, können Sie:

    • Schreiben Sie native Tests für Ihre Spiel-Engine

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

    • Optional erstellen mehrere Schleife in einer einzigen Testdurchführung laufen (Besuch über Game Loop - Tests um mehr zu erfahren). Sie können Loops auch mithilfe von Labels organisieren, damit Sie den Überblick behalten und bestimmte Loops erneut ausführen können.

    Siehe Ausführen eines Spielschleifentest für Anweisungen auf diesen Test mit Test Lab läuft.

Tools zum Ausführen Ihres Tests

Sie können die folgenden Tools zum Ausführen Ihres Tests auswählen:

  • Empfohlen für Erstanwender: Die Firebase Konsole können Sie eine App laden und starten Sie von Ihrem Web - Browser zu testen. Siehe Test mit der Firebase Konsole Anweisungen zum Ausführen von Tests mit diesem Tool.

  • Android Studio - Integration können Sie Ihre App testen , ohne die Entwicklungsumgebung zu verlassen. Siehe Prüfung mit Android Studio Anweisungen zum Ausführen von Tests mit diesem Tool.

  • Die gcloud Kommandozeilen - Schnittstelle ermöglicht es Ihnen , Tests von der Kommandozeile interaktiv ausführen können , und ist auch gut für das Skripting als Teil Ihrer automatisierten Build und Testprozess geeignet. Siehe Test mit dem gcloud CLI Anweisungen zum Ausführen von Tests mit diesem Tool.

Sie können Ihre App auch kostenlos mit Test Lab testen, wenn Sie die APK-Dateien Ihrer App über den Alpha- oder Betakanal hochladen und im Play Store veröffentlichen. Weitere Informationen finden Sie Verwenden Pre-Launch Berichte Probleme zu identifizieren und Robo - Tests .

Schritt 2: Wählen Sie Ihr Testgerät

Test Lab unterstützt Tests auf mehreren Marken und Modellen von Android-Geräten, die in einem Google-Rechenzentrum installiert sind und ausgeführt werden. Durch das Testen auf Geräten in Test Lab können Sie Probleme erkennen, die beim Testen Ihrer App mit Emulatoren in Android Studio möglicherweise nicht auftreten. Um mehr zu erfahren, siehe Verfügbare Geräte.

Schritt 3: Review Testergebnisse

Unabhängig davon, wie Sie Ihre Tests starten, werden alle Ihre Testergebnisse von Test Lab verwaltet und können online eingesehen werden.

Das Testergebnis Zusammenfassung wird automatisch gespeichert und können in der Konsole Firebase sehen. Es enthält die relevantesten Daten für Ihren Test, einschließlich testfallspezifischer Videos, Screenshots, der Anzahl der bestandenen, fehlgeschlagenen oder fehlerhaften Tests und mehr.

Die rohen Testergebnisse enthalten Prüfprotokolle und App Störungsdetails und wird automatisch in einem Google Cloud Bucket gespeichert. Wenn Sie einen Bucket angeben, sind Sie für die Kosten der Speicherung verantwortlich. Wenn Sie keinen Bucket angeben, erstellt Test Lab kostenlos einen für Sie.

Weitere Einzelheiten finden Sie Firebase Test Lab Ergebnisse analysieren.

Wenn Sie einen Test aus initiieren Android Studio , können Sie auch Testergebnisse aus dem Inneren der Entwicklungsumgebung überprüfen.

Gerätebereinigung

Google nimmt die Sicherheit Ihrer App-Daten sehr ernst. Wir befolgen branchenübliche Best Practices, um App-Daten zu entfernen und die Systemeinstellungen für physische Geräte nach jedem Testlauf zurückzusetzen, um sicherzustellen, dass sie bereit sind, neue Tests auszuführen. Bei Geräten, die wir mit einem benutzerdefinierten Wiederherstellungsimage flashen können, gehen wir noch einen Schritt weiter, indem wir diese Geräte zwischen den Testläufen flashen.

Bei den von Test Lab verwendeten virtuellen Geräten werden Geräteinstanzen nach ihrer Verwendung gelöscht, sodass jeder Testlauf eine neue virtuelle Geräteinstanz verwendet.


Testlabor und Google Play-Dienste

Test Lab-Geräte werden normalerweise mit der neuesten Version des SDK für die Google Play-Dienste ausgeführt. Bei einigen kann die Aktualisierung jedoch einige Tage dauern, nachdem eine neue Version des SDK veröffentlicht wurde. Beachten Sie, dass bei einigen Geräten Kompatibilitätsprobleme auftreten können.

Zulassen, dass Testgeräte auf private Backend-Server zugreifen

Einige mobile Apps müssen mit privaten Back-End-Diensten kommunizieren, um während des Tests ordnungsgemäß zu funktionieren. Wenn Ihr Back - End - Server , die von Firewall - Regeln geschützt sind, können Sie den Zugriff für Test Lab physischen und virtuellen Geräten unter Verwendung der erlauben IP - Adressblöcke unten zu offenen Routen durch die Firewall.

Mobile Werbung

Test Lab bietet eine skalierbare Infrastruktur, die das Testen von Apps automatisiert, und leider kann diese Funktion von bösartigen Apps missbraucht werden, die darauf abzielen, betrügerische Werbeeinnahmen zu generieren.

Um dieses Problem zu mildern:

  • Wenn Sie Drittanbieter für digitale Werbung verwenden oder mit ihnen zusammenarbeiten (z. B. Werbenetzwerke oder Demand-Side-Plattformen), wird empfohlen, während der Entwicklung und des Testens von Apps Testanzeigen anstelle von echten Anzeigen zu verwenden.

  • Wenn Sie echte Anzeigen in Ihrem Test verwenden müssen, benachrichtigen die digitalen Werbeanbieter Sie heraus Umsatz mit zum Filter arbeiten und alle entsprechenden Datenverkehr von Test Lab erzeugt , indem die Verwendung von Adresse IP - Blöcke unten . Sie müssen Google-eigene Anzeigenanbieter nicht benachrichtigen. Das erledigt Test Lab für Sie.

Von Testlaborgeräten verwendete IP-Adressen

Alle Netzwerkverkehr von Test Lab Geräten erzeugt stammt aus den folgenden IP - Adressblöcken . Beachten Sie, dass Sie diese Liste auch mit Hilfe der Zugriff auf gcloud beta firebase test ip-blocks list im gcloud CLI - Befehl. Die Liste wird regelmäßig aktualisiert (durchschnittlich einmal pro Jahr).

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

108.177.6.0/23

70.32.147.112/28 (hinzugefügt 03-2020)

74.125.122.32/29 (hinzugefügt 04-2020)

108.177.29.80/28 (hinzugefügt 04-2020)

216.239.44.24/29 (hinzugefügt 04-2020)

Virtuelle Android-Geräte

34.68.194.64/29 (hinzugefügt 11-2019)

34.69.234.64/29 (hinzugefügt 11-2019)

34.73.34.72/29 (hinzugefügt 11-2019)

34.73.178.72/29 (hinzugefügt 11-2019)

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)

199.192.115.0/30

199.192.115.8/30

199.192.115.16/29