Check out what’s new from Firebase@ Google I/O 2021, and join our alpha program for early access to the new Remote Config personalization feature. Learn more

Erste Schritte mit Firebase Test Lab für iOS

Mit Firebase Test Lab können Sie Ihre App auf einer Reihe von Geräten und Konfigurationen auf Qualität testen. Dieses Handbuch bietet einen Überblick über die wichtigsten Konzepte von Test Lab, die iOS-Angebote und Anweisungen zum Starten des Testens.

Informationen zu Testlaborkontingenten und Preisplänen finden Sie unter Nutzung, Kontingente und Preise .

Schlüsselkonzepte und Begriffe

Wenn Sie einen Test oder eine Reihe von Testfällen für die von Ihnen ausgewählten Geräte und Konfigurationen ausführen, führt Test Lab den Test für Ihre App in einem Batch 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 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 zum Hochladen in Test Lab vor

Sie können die folgenden Tests mit Test Lab ausführen. Beachten Sie, dass alle Testtypen auf physischen Geräten maximal 45 Minuten lang ausgeführt werden können und jede nicht erfasste Ausnahme zu einem Testfehler führt.

  • XCTest (einschließlich XCUITests) : Ein Komponententest, den Sie mit dem XCTest-Framework geschrieben haben . Anweisungen zum Ändern eines XCTest für die Ausführung mit Test Lab finden Sie unter Create an XCTest .

  • Game Loop-Test : Ein Test, der einen "Demo-Modus" verwendet, um Spieleraktionen in Gaming-Apps zu simulieren. 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.

    • Erstellen Sie optional mehrere Schleifen, die in einer einzigen Testausführung ausgeführt werden. Sie können Loops auch mithilfe von Labels organisieren, damit Sie den Überblick behalten und bestimmte Loops erneut ausführen können.

    Anweisungen zum Ausführen Ihres Tests in Test Lab finden Sie unter Ausführen eines Game Loop-Tests .

Schritt 2 : Wählen Sie ein Tool zum Ausführen Ihres Tests

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

  • Über die Firebase-Konsole können Sie eine App hochladen und von überall aus Tests starten. Anweisungen zur Verwendung dieses Tools finden Sie unter Testen mit der Firebase-Konsole .

  • Die gcloud-Befehlszeilenschnittstelle (CLI) ermöglicht Ihnen die interaktive Ausführung von Tests über die Befehlszeile und eignet sich auch gut für die Skripterstellung als Teil Ihres automatisierten Build- und Testprozesses. Anweisungen zur Verwendung dieses Tools finden Sie unter Testen mit der gcloud-CLI .

  • Führen Sie Ihren Test vor dem Testen auf realen Geräten lokal auf einem Simulator aus , um sicherzustellen, dass er sich wie gewünscht verhält. Anweisungen finden Sie unter Lokal testen .

Schritt 3 : Testgeräte angeben

Mit Test Lab können Sie Ihre App auf einer Vielzahl von iOS-Geräten und -Modellen testen, die in einem Google-Rechenzentrum gehostet werden. Weitere Informationen finden Sie unter Verfügbare Geräte.

Schritt 4 : Testergebnisse überprüfen

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

Die Zusammenfassung der Testergebnisse wird automatisch gespeichert und kann in der Firebase-Konsole angezeigt werden. 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 Rohtestergebnisse enthalten Testprotokolle und Details zu App-Fehlern und werden 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 Informationen finden Sie unter Analysieren der Ergebnisse des Firebase-Testlabors.

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 mobile Werbung

Für App-Entwickler, die digitale Werbeanbieter verwenden oder mit ihnen zusammenarbeiten (z. B. Werbenetzwerke, Demand-Side-Plattformen) und für digitale Werbeanbieter:

Test Lab bietet Entwicklern eine skalierbare Infrastruktur für App-Tests, die App-Tests automatisiert. Leider könnte diese Funktion von bösartigen Apps missbraucht werden, die darauf abzielen, betrügerische Werbeeinnahmen zu generieren.

Um dieses Problem zu mildern:

  • App-Entwickler sollten alle Anbieter digitaler Werbung benachrichtigen, mit denen sie zusammenarbeiten, um Einnahmen und den gesamten entsprechenden Datenverkehr herauszufiltern, der von Geräten generiert wird, die zu Testanbietern gehören, einschließlich Test Lab.

  • Anbieter digitaler Werbung können Werbeeinnahmen und den gesamten entsprechenden Traffic, der von Test Lab generiert wird, filtern, indem sie den Traffic filtern, der von den folgenden IP-Adressblöcken stammt (beachten Sie, dass Sie auf diese Liste auch mit dem gcloud beta firebase test ip-blocks list in der gcloud-CLI g ):

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