Ergebnisse des Firebase Test Lab analysieren

Es gibt mehrere Möglichkeiten, Firebase Test Lab zum Ausführen von Tests für Ihre Android-App zu verwenden, darunter die Befehlszeilenschnittstelle, Android Studio, die Test Lab-Benutzeroberfläche in der Firebase Console und die Testing API. Unabhängig davon, wie Sie Ihre Tests starten, werden die Ergebnisse in dem von Ihnen angegebenen Firebase-Projekt gespeichert. Zusätzlich zu den oben genannten Tools können Sie die Ergebnisse auch mit der ToolResults API untersuchen. Auf dieser Seite wird beschrieben, wie Sie diese Testergebnisse prüfen und analysieren.

Wichtige Konzepte

Wenn Sie die Ergebnisse aller vorherigen Testläufe sehen möchten, wählen Sie in der Firebase-Konsole im linken Navigationsbereich Ihres Projekts Test Lab aus. Auf dieser Seite werden alle Testläufe der Apps angezeigt, die Sie mit Ihrem Projekt mit Test Lab getestet haben.

Um Testergebnisse zu analysieren, müssen Sie zuerst drei Konzepte verstehen:

Wenn Sie einen Test oder eine Reihe von Testläufen 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 × Testläufe = 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 anhand von Gerätemodell, Betriebssystemversion, Bildschirmausrichtung und Gebietsschema (auch als geografische und Spracheinstellungen bezeichnet) identifiziert.
Test, Testausführung
Ein Test (oder eine Reihe von Testläufen), der auf einem Gerät ausgeführt werden soll. Sie können einen Test pro Gerät ausführen oder den Test optional aufteilen und seine Testläufe auf verschiedenen Geräten ausführen.
Testmatrix
Enthält die Status und Testergebnisse für Ihre Testläufe. Wenn die Ausführung eines Tests in einer Matrix fehlschlägt, schlägt die gesamte Matrix fehl.

In den folgenden Abschnitten wird erläutert, wie Sie die Testergebnisse aufrufen.

Ergebnisse des Testverlaufs interpretieren

Wenn Sie die Testergebnisse aufrufen, indem Sie Test Lab auswählen, sehen Sie die Ergebnisse der bisher ausgeführten Tests.

Der Testverlauf ist nach App gruppiert. Für jede App werden nur die fünf letzten Testmatrizen angezeigt. Wenn mehr verfügbar sind, können Sie unten in der App-Testliste auf den Link Alle Matrizen klicken, um die vollständige Liste für die jeweilige App aufzurufen.

Ergebnisse der Testmatrix interpretieren

Wenn Sie einen Test über die Test Lab-Benutzeroberfläche starten, werden Sie zu einer Seite weitergeleitet, auf der Sie Ihre Testmatrix sehen und auf eine bestimmte Testausführung klicken können, um die Testergebnisse aufzurufen. Android Studio und der gcloud-Befehl stellen ebenfalls eine URL für die Ergebnisseite der Testmatrix bereit.

In einer typischen Testmatrix führen Sie einen Test auf etwa einem Dutzend verschiedener Geräte aus. Jede Testausführung kann ein anderes Ergebnis haben. Die möglichen Ergebnisse für jede Testausführung in einer Testmatrix sind:

  • Bestanden Test bestanden: Es sind keine Fehler aufgetreten.
  • Fehler Test fehlgeschlagen: Es ist mindestens ein Fehler aufgetreten.
  • Nicht aussagekräftig Test bestanden: Die Testergebnisse waren nicht aussagekräftig, möglicherweise aufgrund eines Test Lab-Fehlers.
  • Übersprungen Test bestanden: Die ausgewählten Dimensionswerte für einige Testläufe in der Matrix waren nicht kompatibel. Dieser Fehler tritt auf, wenn die ausgewählten Geräte mit mindestens einer der ausgewählten Android-API-Ebenen nicht kompatibel sind.

Wenn Sie zusammengefasste Testergebnisse für alle Testmatrizen für eine bestimmte App in Ihrem Firebase-Projekt aufrufen möchten, klicken Sie auf den Namen der App, wie im folgenden Beispiel gezeigt:

Beispielseite mit Ergebnissen der Testmatrix mit nur vier Testausführungen Ergebnisse der Testmatrix

Sie gelangen dann zur Liste der Testmatrix für Ihre App. Dort können Sie auf den Namen einer Testmatrix klicken, um die Ergebnisse der Testmatrix aufzurufen. Außerdem können Sie auf den Namen der App (im roten Feld unten) klicken, um die Liste der Testmatrix für andere Apps aufzurufen, die mit Ihrem Firebase-Projekt verknüpft sind.

Beispiel für eine Seite mit einer Testmatrixliste Testmatrixliste

Eine Testmatrix kann bestanden, fehlgeschlagen oder nicht eindeutig sein. Eine Testmatrix wird als fehlgeschlagen oder nicht eindeutig angezeigt, wenn Testläufe in dieser Matrix fehlschlagen oder nicht eindeutig sind.

Robo-Testergebnisse interpretieren

Wenn Sie Ihre Tests mit Robo ausgeführt haben, enthalten die Ergebnisse neben den üblichen Testmesswerten auch Videos und Screenshots, die zeigen, wie Robo Ihre Benutzeroberfläche durchläuft. Diese Videos und Screenshots enthalten visuelle Hinweise auf die Aktionen, die Robo während des Crawlings ausgeführt hat, ähnlich der Funktion „Berührungen anzeigen“ in Android. Anhand der Hinweise können Sie den Fortschritt von Robo nachvollziehen und alle Fehler reproduzieren, die möglicherweise gefunden werden.

Beispielvideo mit Robo-Testergebnissen

Ergebnisse von Robo-Tests

Ergebnisse einer einzelnen Testausführung interpretieren

Klicken Sie auf der Seite mit den Ergebnissen der Testmatrix auf einen der Testläufe, um das Ergebnis dieses bestimmten Testlaufs zu sehen.

Beispielseite mit Ergebnissen der Testausführung Ergebnisse der Testausführung

Auf dieser Seite sehen Sie die für die einzelnen Testläufe benötigte Zeit. Sie können auch die Ergebnisse für bestimmte Testläufe sehen, die Methoden in Ihrem Test-APK (für Instrumentierungstests) entsprechen, sowie detaillierte Testergebnisse, einschließlich Testprotokollen, Screenshots und Videos. Bei Robo-Tests enthalten die detaillierten Testergebnisse auch eine Aktivitätskarte, auf der die vom Robo-Test besuchten UI-Pfade grafisch dargestellt werden.

Partitionierte Instrumentierungstestergebnisse

Damit Sie die Ergebnisse instrumentierter Tests besser interpretieren können, wird jeder Test in Test Lab auf einer eigenen detaillierten Berichtsseite mit Stacktraces, Logs und Videos dargestellt. Diese Funktion funktioniert unabhängig davon, ob Sie Android Orchestrator verwenden.

Beispielseite mit Testlaufergebnissen Testlaufergebnisse

Ergebnisse der Bedienungshilfen interpretieren

Bei Robo-Tests wird der Android Accessibility Scanner verwendet, um Barrierefreiheitsprobleme in Ihrer App zu erkennen. Sie können auch einen Scan lokal auf Ihrem Gerät ausführen. Eine Anleitung dazu, wie Sie die Bedienungshilfe-Ergebnisse Ihres Robo-Tests prüfen und interpretieren, finden Sie unter Einführung in den Accessibility Scanner.

Allgemeine Informationen dazu, wie Sie die Barrierefreiheit Ihrer App verbessern können, finden Sie in der Dokumentation zu Bedienungshilfen für Android-Entwickler.

Leistungsmesswerte

Bei Tests auf physischen Geräten werden auch Leistungsmesswerte zurückgegeben:

MesswertErforderliche Gerätekonfiguration
App-StartzeitAPI 19 und höher
CPU-NutzungAPI 21 und höher
Arbeitsspeichernutzung
Netzwerkaktivität
Bilder pro SekundeAPI 21+ und enthält eine SurfaceView

Detaillierte Testergebnisse

Detaillierte Testergebnisse sind 90 Tage nach dem Ausführen eines Tests verfügbar und werden in einem Google Cloud Storage-Bucket gespeichert (sind aber auch in der Firebase-Konsole sichtbar). Detaillierte Testergebnisse können Sie im Cloud Storage-Bucket aufrufen, indem Sie auf der Seite mit den Ergebnissen der Testausführung auf Testergebnisse klicken. Wenn keine detaillierten Testergebnisse mehr verfügbar sind, können Sie trotzdem sehen, welche Tests bestanden oder fehlgeschlagen sind.

Wenn Sie detaillierte Testergebnisse länger als 90 Tage aufbewahren möchten, können Sie diese Testergebnisse mit der gcloud-Befehlszeilenoption--results-bucket an einen Cloud Storage-Bucket senden, der Ihnen gehört. Anschließend können Sie die Einstellung Alter festlegen, um zu bestimmen, wie lange Ergebnisse in Ihrem Cloud Storage-Bucket gespeichert werden. Informationen zum Ändern der Einstellung Alter finden Sie unter Lebenszyklusbedingungen.

Wenn Sie beim Ausführen eines Tests den Fehler does not have storage.objects.create access to the Google Cloud Storage object. Permission 'storage.objects.create' denied on resource (or it may not exist).. erhalten, hat der Nutzer, der den Test ausführt, möglicherweise nicht die richtige Berechtigung für das Projekt. Standardmäßig erstellt Firebase einen Bucket für Sie in Google Cloud Storage. Das Hauptkonto, das den Test ausführt, muss jedoch die Rolle „roles/editor“ haben, die eine permissive Rolle ist. Wenn Sie dem Prinzipal diese Rolle nicht zuweisen können, können Sie die --results-bucket-gcloud-Befehlszeilenoption verwenden.