In diesem Dokument wird beschrieben, wie Sie Robo-Scripts verwenden. Dabei handelt es sich um Tests, die manuelle QA-Aufgaben für mobile Apps automatisieren und Continuous Integration (CI) und Teststrategien vor der Markteinführung ermöglichen. Sie können beispielsweise Robo-Scripts verwenden, um eine gängige User Journey zu testen oder bestimmte Eingaben für die Benutzeroberfläche (UI) wie einen Nutzernamen und ein Passwort anzugeben. Robo-Scripts sind eine Funktion des Robo-Tests.
Robo-Scripts verwenden den Robo-Test als Test-Engine. In seiner einfachsten Form besteht ein Robo-Script aus einer Abfolge von UI-Aktionen wie Text eingeben 'Nutzername' und anschließendem Tippen auf die Schaltfläche „OK“. Robo-Skripts können auch Aktionen wie das Warten auf das Erscheinen eines Elements, Tippen auf einen bestimmten Punkt innerhalb eines Elements und das Ausführen von Android Debug Bridge-Shell-Befehlen (adb
) umfassen.
Robo-Scripts haben gegenüber herkömmlichen Test-Frameworks folgende Vorteile:
Funktion | Beschreibung |
Äußerst robust | Robo-Scripts können erhebliche strukturelle und verhaltensbezogene Unterschiede zwischen App-Versionen und App-Unzuverlässigkeiten tolerieren. |
Offene Frage | Nach Abschluss eines Robo-Skripts kann der Robo-Basistest die Anwendung übernehmen und die App weiter testen. Diese kontinuierliche Testmethode ermöglicht mehrere wichtige Anwendungsfälle. Sie können beispielsweise ein Robo-Script verwenden, um eine App in einen bestimmten Status zu versetzen, indem Sie einen benutzerdefinierten Anmeldevorgang ausführen. |
Beschreibbar | Sie müssen Robo-Scripts nicht manuell programmieren. Sie können mit dem Robo-Script-Recorder in Android Studio aufgezeichnet werden. Für das Erstellen oder Ändern von Robo-Skripts sind in der Regel keine Kenntnisse in der mobilen Entwicklung erforderlich. |
Flexibel | Robo-Scripts können mit nicht nativen UI-Elementen interagieren, die in Spielen häufig vorkommen. |
Robo-Scripts werden während eines Robo-Tests bedingt ausgelöst. So können Nutzer das Verhalten des Bots erweitern, um in der Regel eine größere Abdeckung oder eine bestimmte Funktion zu erreichen. Im Gegensatz zu herkömmlichen Test-Frameworks unterstützen Robo-Scripts Folgendes:
- Verschiedene Triggerbedingungen, z. B. ob ein bestimmter App-Paketname aktiv ist oder nicht oder ob ein bestimmtes Element auf dem Bildschirm angezeigt wird oder nicht.
- Ausführungssteuerungen, z. B. maximale Anzahl von Ausführungen, Priorität, relevante Crawling-Phase.
- Unkonventionelle Aktionstypen (Bedingungen, Ignorieren von Elementen, Bildschirmschließung)
Wir empfehlen, nach Möglichkeit Robo-Scripts zu verwenden, da sie mühelos gewartet werden können. Mit einem Robo-Script können Sie beispielsweise Folgendes tun:
- Gehen Sie wichtige Workflows durch, um die Hauptfunktionen einer App zu verstehen. Sie können beispielsweise eine Anmeldung ausführen, den Status einer App nach der ersten Ausführung einrichten und einen neuen Nutzer registrieren.
- Sie können Robo auf einen bestimmten Teil einer App ausrichten, um die Robo-Testzeit optimal zu nutzen. Das Robo-Skript leitet den Robo-Test an den relevanten Teil einer App an, in dem der Robo-Test einen vollständig automatisierten Crawling-Vorgang fortsetzt.
- Versetzen Sie eine App in einen bestimmten Status oder Bildschirm, um eine Analyse durchzuführen, z. B. um eine In-App-Nachricht, eine Datenschutzerklärung oder ein bestimmtes Level eines Spiels zu analysieren.
- Führen Sie einen End-to-End-Instrumentierungstest mit oder ohne Robo-Test durch, wobei ein vollständig automatisiertes Crawling nach Abschluss des Robo-Skripts fortgesetzt wird.
Mit erweiterten Funktionen von Robo-Scripts können Sie Folgendes tun:
- Führen Sie Aktionen aus, bevor Robo mit dem Crawling der zu testenden App beginnt oder nachdem das Crawling abgeschlossen ist. Beispielsweise können Sie die zu testenden Daten vor dem Crawling bereinigen oder die Geräteeinstellungen ändern.
- Sie können Aspekte des Roboterverhaltens während eines Crawlings ändern, insbesondere:
- Robo kann dazu veranlasst werden, bestimmte UI-Widgets oder App-Bildschirme zu ignorieren.
- Geben Sie eine benutzerdefinierte Aktion an, die Robo ausführen soll, wenn er von einem bestimmten Bildschirm zurückgeht.
- Robo kann bestimmte Aktionen ausführen, wenn während eines Crawlings ein bestimmter App-Bildschirm angezeigt wird.
- Sie können die Crawling-Methode von Robo vollständig anpassen. Verwenden Sie beispielsweise eine Kombination aus bedingten und nicht bedingten Aktionen, um die zu testende App während des gesamten Crawlings im Hintergrund zu halten, während Sie Gerätemanipulationen ausführen und alle Pop-up-Dialogfelder schließen, die angezeigt werden.
Robo-Scripts ersetzen nicht alle Arten von Tests. Einheitentests sind weiterhin erforderlich, um Logikfehler in Ihrer App auf niedriger Ebene zu erkennen. Für diese Tests ist normalerweise keine Android- oder iOS-Umgebung erforderlich. Wir empfehlen, Robo-Script-Tests durch gezielte Instrumentierungstests zu ergänzen, die spezifische, detaillierte Behauptungen zur Geschäftslogik enthalten können, die am besten in Code ausgedrückt werden.
Nächste Schritte
Informationen zur Struktur, zu den Funktionen, zur Verwendung und zu den Aktionen von Robo-Scripts finden Sie im Referenzhandbuch für Robo-Scripts.