Führen Sie ein Robo-Skript aus

Dieses Dokument beschreibt die Verwendung von Robo-Skripts , bei denen es sich um Tests handelt, die manuelle QA-Aufgaben für mobile Apps automatisieren und kontinuierliche Integrations- (CI) und Pre-Launch-Teststrategien ermöglichen. Beispielsweise können Sie Robo-Skripte verwenden, um eine allgemeine Benutzerreise zu testen oder bestimmte Eingaben für die Benutzeroberfläche (UI) wie einen Benutzernamen und ein Kennwort bereitzustellen. Robo-Skripte sind eine Funktion von Robo-Test .

Mit Robo-Skripts nehmen Sie sich selbst auf, wie Sie einen Workflow in Ihrer App durchlaufen, und laden diese Aufzeichnung dann in die Firebase-Konsole hoch, um sie in Robo-Tests auszuführen. Wenn Sie einen Robo-Test mit einem angehängten Skript ausführen, führt Robo zunächst Ihre vorgeskripteten Aktionen durch und untersucht dann wie gewohnt die App.

Robo-Skripte beginnen, wenn die App zum ersten Mal mit Robo Test als Test-Engine geladen wird. In seiner einfachsten Form besteht ein Robo-Skript aus einer Folge von UI-Aktionen wie der Eingabe des Textes „Benutzername“ und dem anschließenden Tippen auf die Schaltfläche „OK “ . Robo-Skripte können auch Aktionen wie das Warten auf das Erscheinen eines Elements, das Tippen auf einen bestimmten Punkt innerhalb eines Elements und das Ausführen von Android Debug Bridge ( adb )-Shell-Befehlen enthalten.

Robo-Skripte haben gegenüber herkömmlichen Test-Frameworks folgende Vorteile:

Fähigkeit Beschreibung
Sehr robust Robo-Skripte können erhebliche strukturelle und Verhaltensunterschiede zwischen App-Versionen und App-Flakiness tolerieren.
Offenes Ende Nachdem ein Robo-Skript abgeschlossen ist, kann der Basis-Robo-Test übernehmen und mit dem Testen der App fortfahren. Dieser kontinuierliche Testansatz ermöglicht mehrere wichtige Anwendungsfälle. Beispielsweise können Sie ein Robo-Skript verwenden, um eine App in einen bestimmten Zustand zu versetzen, indem Sie einen benutzerdefinierten Anmeldeablauf ausführen.
Beschreibbar Sie müssen Robo-Skripte nicht manuell codieren. Sie können mit dem Robo Script Recorder in Android Studio aufgezeichnet werden. Das Erstellen oder Ändern von Robo-Skripten erfordert normalerweise keine Kenntnisse der mobilen Entwicklung.
Flexibel Robo-Skripte können mit nicht-nativen UI-Elementen interagieren, die in Spielen üblich sind.

Wir empfehlen, wann immer möglich Robo-Skripte zu verwenden, da sie einfach zu warten sind. Beispielsweise können Sie ein Robo-Skript verwenden, um Folgendes zu tun:

  • Navigieren Sie durch wichtige Workflows, um zum Kern der Funktionalität einer App zu gelangen. Beispielsweise können Sie sich anmelden, den Status einer App nach dem ersten Start festlegen und einen neuen Benutzer registrieren.
  • Konzentrieren Sie Robo auf einen bestimmten Teil einer App, um die Robo-Testzeit optimal zu nutzen. Das Robo-Skript leitet Robo Test an den relevanten Teil einer App, wo Robo Test ein vollautomatisches Crawling fortsetzt.
  • Bringen Sie eine App in einen bestimmten Zustand oder Bildschirm, um eine Analyse durchzuführen, z. B. um eine In-App-Nachricht, eine Datenschutzrichtlinie oder ein bestimmtes Level eines Spiels zu analysieren.
  • Führen Sie einen End-to-End-Instrumentierungstest mit oder ohne Robo-Test durch, der ein vollständig automatisiertes Crawling fortsetzt, nachdem das Robo-Skript abgeschlossen ist.

Denken Sie daran, dass Robo-Skripte nicht alle Arten von Tests ersetzen. Sie benötigen immer noch Unit-Tests, um Low-Level-Logikfehler in Ihrer App zu finden. Diese Tests erfordern in der Regel keine Android- oder iOS-Umgebung. Wir empfehlen, dass Sie Robo-Skripttests durch gezielte Instrumentierungstests ergänzen, die spezifische, detaillierte Aussagen zur Geschäftslogik enthalten können, die am besten im Code ausgedrückt werden.

Zeichnen Sie ein Robo-Skript mit Test Lab in Android Studio auf

Mit dem Robo-Script-Rekorder in Android Studio können Sie Robo-Scripts aufzeichnen, indem Sie direkt mit der App auf Ihrem Gerät interagieren. Befolgen Sie diese Anweisungen, um mit dem Robo-Skripting über das Firebase-Tool in Android Studio zu beginnen:

  1. Öffnen Sie Android Studio und wählen Sie Extras -> Firebase .

  2. Klicken Sie im Firebase-Bereich auf Robo-Skript aufzeichnen und zum Führen von Robo-Test verwenden .

  3. Klicken Sie auf Robo-Skript aufzeichnen . Das Dialogfeld Bereitstellungsziel auswählen wird angezeigt.

  4. Wählen Sie das Gerät aus, auf dem Sie das Robo-Skript aufzeichnen möchten.

  5. Nachdem Sie das Robo-Skript auf dem Gerät aufgezeichnet haben, speichern Sie die Datei als JSON-Datei am gewünschten Speicherort.

  6. Öffnen Sie die Testlaborseite in der Firebase-Konsole und laden Sie die JSON-Skriptdatei und die Anwendungs-APK hoch.

  7. Klicken Sie auf die Schaltfläche Weiter . Sie werden aufgefordert, das Gerät und die API-Ebene auszuwählen. Nachdem das Testskript abgeschlossen ist, generiert Test Lab den Testbericht.

  8. (Optional) Um den Logcat des Testberichts und des Videos zu kopieren oder herunterzuladen, klicken Sie auf Quelldateien anzeigen .

Standardmäßig verhindern Robo-Skript-Robustheitsmechanismen, dass es frühzeitig fehlschlägt. Wenn Sie den strict Ausführungsmodus auswählen und ein Robo-Skript an irgendeiner Stelle fehlschlägt, verwirft Test Lab alle weiteren Schritte im Skript und setzt ein reguläres Robo-Crawling fort. Meistens schlagen Robo-Skripte fehl, weil Robo ein erforderliches Element auf dem Bildschirm nicht finden kann. Um Fehler zu vermeiden, stellen Sie sicher, dass Ihre App-Navigation vorhersehbar ist und dass Ihre Bildschirme in einer deterministischen Reihenfolge angezeigt werden.

Führen Sie ein Robo-Skript in Test Lab aus

Befolgen Sie diese Anweisungen, um ein Robo-Skript in Test Lab auszuführen:

  1. Öffnen Sie die Seite „Testlabor“ in der Firebase-Konsole.

  2. Laden Sie das APK oder AAB der App in das Feld App APK oder AAB hoch .

  3. Laden Sie Ihre aufgezeichnete oder manuell erstellte Robo-Skriptdatei in das Feld Robo-Skript (optional) hoch.

Stellen Sie ein Robo-Skript für einen lokalen Robo-Testlauf bereit

Verwenden Sie die folgende Robo-Testoption, um ein Robo-Skript für einen lokalen Robo-Testlauf bereitzustellen:

--robo-script-file <robo-script-path>

Ersetzen Sie <robo-script-path> durch einen Pfad zu Ihrer Robo-Skriptdatei im lokalen Dateisystem. Befolgen Sie die Anweisungen für einen lokalen Robo-Testlauf .

Geben Sie ein Robo-Skript in einem gcloud-CLI-Testaufruf an

Um ein Robo-Skript in einem gcloud-CLI-Testaufruf anzugeben, verwenden Sie das folgende gcloud-CLI-Flag:

--robo-script = <robo-script-path>

Ersetzen Sie <robo-script-path> durch einen Pfad zu Ihrer Robo-Skriptdatei im lokalen Dateisystem oder in Cloud Storage unter Verwendung der gs:// Notation. Zum Beispiel:

gcloud firebase test android run --app = <path_to_app_apk_file> --robo-script = <robo-script-path>

Nächste Schritte