Journeys für Android Studio

Abläufe für Android Studio nutzt die Computer-Vision- und Schlussfolgerungsfunktionen von KI, um Ihre App entsprechend Ihren natürlichsprachigen Anweisungen zu testen. Ihre Anweisungen, die als Ablauf bezeichnet werden, werden in Aktionen umgewandelt, die von KI in Ihrer App ausgeführt werden. Außerdem können Sie komplexere Assertions formulieren und beschreiben, die von KI anhand der Informationen auf dem Gerät ausgewertet werden.

Abläufe für Android Studio
Abläufe für Android Studio
:

Da Gemini überlegt, welche Aktionen ausgeführt werden müssen, um die Ziele zu erreichen, sind Abläufe weniger anfällig für subtile Änderungen am Layout oder Verhalten Ihrer App. Das führt zu weniger instabilen Tests, wenn sie für verschiedene Versionen Ihrer App und verschiedene Gerätekonfigurationen ausgeführt werden.

Sie können Abläufe direkt in Android Studio oder über die Befehlszeile schreiben und auf jedem lokalen oder Remote-Android-Gerät ausführen. Die IDE bietet eine neue Editor-Oberfläche zum Erstellen von Abläufen sowie aussagekräftige Ergebnisse, mit denen Sie die Schlussfolgerungen von Gemini und die Ausführung Ihres Ablaufs durch Gemini besser nachvollziehen können.

Ablauf schreiben

Android Studio bietet eine Dateivorlage und einen neuen Editor, mit dem sich Abläufe einfacher erstellen und bearbeiten lassen. Abläufe verwenden die XML-Syntax, um die Beschreibung und die Schritte zu organisieren.

Der Ablauf-Editor in Android Studio mit einer XML-Datei mit Ablaufschritten.

So erstellen Sie einen Ablauf und beginnen mit der Bearbeitung:

  1. Rechtsklicken Sie in Android Studio im Bereich Projekt auf das App-Modul, für das Sie einen Ablauf schreiben möchten.
  2. Wählen Sie Neu > Ablauftest aus.
  3. Geben Sie im angezeigten Dialogfeld den Namen und die Beschreibung des Ablaufs ein.

    Ein Dialogfeld in Android Studio, mit dem Sie eine Ablaufdatei erstellen.
    Ein Dialogfeld in Android Studio, mit dem Sie eine Ablaufdatei erstellen.

  4. Klicken Sie auf Fertig. Android Studio erstellt eine XML-Datei für Ihren Ablauf mit dem von Ihnen ausgewählten Namen. Sie können entweder die Code-Ansicht verwenden, um den XML-Code direkt zu bearbeiten, oder die Design-Ansicht für eine vereinfachte Bearbeitung.

  5. Wenn Sie sich Ihren Ablauf in der Design-Ansicht ansehen, können Sie im Textfeld jeden Schritt Ihres Ablaufs beschreiben. Jeder Schritt kann beschreibende Aktionen enthalten, die Gemini ausführen soll, oder Assertions, die Gemini bewerten soll.

  6. Drücken Sie die Eingabetaste, um einen neuen Schritt in demselben Ablauf zu starten. Sie können diesen Vorgang für jeden Ablaufschritt, den Sie definieren möchten, wiederholen.

Build-Varianten konfigurieren

Abläufe werden für bestimmte Build-Varianten Ihrer App ausgeführt. Wenn Sie zum ersten Mal einen Ablauf mit dem Assistenten erstellen, wird die generierte Test-Suite für die Build-Variante konfiguriert, die in Android Studio aktiv ist.

Wenn Sie die aktive Build-Variante in Android Studio später jedoch ändern (z. B. in eine andere Produktvariante wie demoDebug), ohne die Konfiguration zu aktualisieren, schlägt die Ausführung des Ablaufs fehl. Um das Problem zu beheben, müssen Sie die neue Variante dem Attribut targetVariants im Block testSuites der Datei build.gradle.kts (oder build.gradle) auf Modulebene hinzufügen.

So konfigurieren Sie beispielsweise die Suite journeysTest für die Variante demoDebug:

android {
    // ...
    testSuites {
        create("journeysTest") {
            // ...
            targetVariants += listOf("demoDebug")
        }
    }
}

Tipps zum Schreiben von Abläufen

Die KI kann zwar die meisten Schritte in unterstützten Sprachen verstehen, aber wenn Sie diese Tipps zum Schreiben von Abläufen beachten, können Sie genauere und eher erwartete Ergebnisse erzielen:

  • Gehen Sie davon aus, dass Ihre App sich bereits im Vordergrund befindet: Wenn Sie einen Ablauf ausführen, wird Ihre App automatisch gestartet. Die Schritte des Ablaufs sollten nach dem vollständigen Start der App beginnen. Sie müssen „App starten“ also nicht als separaten Schritt angeben.
  • Verwenden Sie eindeutige Formulierungen: Präzise Formulierungen minimieren das Risiko von Fehlinterpretationen und verbessern die Zuverlässigkeit.
Nicht empfehlenswert Empfehlenswert
„Den Button zum Schließen auswählen“ „Auf ‚Schließen‘ tippen“ oder einfach „Schließen“
„‚Sellerie‘ eingeben“ „In der Suchleiste oben auf dem Startbildschirm ‚Sellerie‘ eingeben“
„Wischen, um zu schließen“ „Nach links wischen, um zu schließen. Die Karte sollte dann nicht mehr sichtbar sein.“
  • Geben Sie Erfolgskriterien als Teil des Schritts an: So kann Gemini Ihre Absicht besser verstehen und es wird verdeutlicht, wann die Aktion abgeschlossen ist und die nächste Aktion beginnen kann.
Nicht empfehlenswert Empfehlenswert
„Den Button ‚Senden‘ auswählen“ „Auf den Button ,Senden‘ tippen, um die E‑Mail zu senden. Dadurch sollte die E-Mail geschlossen und der Posteingang wieder angezeigt werden.“
„Den Einkaufswagen aufrufen“ „Auf das Einkaufswagensymbol tippen, um die Seite ‚Einkaufswagen‘ aufzurufen. Sicherstellen, dass der Einkaufswagen keine Elemente enthält.“
„Das erste Video anklicken“ „Das erste Video anklicken und warten, bis es vollständig geladen ist.“
  • Optimieren Sie Ihren Ablauf: Wenn Ihr Ablauf nicht wie erwartet ausgeführt wird, können Sie die Ergebnisse ansehen und „Ausgeführte Aktion“ und die zugehörige „Schlussfolgerung“ prüfen, um zu verstehen, warum Gemini die Schritte möglicherweise nicht wie erwartet ausgeführt hat. Nutzen Sie diese Informationen, um Ihre Anweisungen deutlicher zu formulieren.
  • Unterteilen Sie Ihren Ablauf in spezifischere Schritte: Die KI kann zwar Schritte mit mehreren Aktionen interpretieren, aber manchmal können detailliertere einzelne Schritte die Genauigkeit und Reproduzierbarkeit des Ablaufs verbessern.
    • „Fehler: Die Aktion konnte nicht innerhalb der maximal zulässigen Versuche abgeschlossen werden“: Wenn dieser Fehler auftritt, versuchen Sie, die fehlgeschlagenen Schritte in zwei oder mehr kleinere Schritte aufzuteilen. Der Fehler tritt auf, wenn die KI die Aktion nicht abschließen kann, nachdem sie eine maximale Anzahl von Interaktionen mit Ihrer App versucht hat.

Unterstützte und nicht unterstützte Funktionen

Hier finden Sie eine Übersicht der unterstützten und der noch nicht vollständig unterstützten Funktionen beim Erstellen von Abläufen. Die folgenden Listen sind nicht vollständig.

Die folgenden Aktionen werden in Abläufen unterstützt:

  • Tippen auf UI-Elemente.
  • Schreiben mit Tastatur, um Text in Textfelder einzugeben.
  • Wischen/Scrollen in eine bestimmte Richtung, um in der Benutzeroberfläche zu navigieren.

Die folgenden Funktionen werden derzeit nicht vollständig unterstützt oder funktionieren möglicherweise nicht konsistent:

  • Touchgesten mit mehreren Fingern (z. B. Auseinander- und Zusammenziehen zum Zoomen): Interaktionen, für die gleichzeitig zwei oder mehr Berührungspunkte auf dem Display erforderlich sind, z. B. Auseinander- und Zusammenziehen zum Heran- oder Herauszoomen oder Wischen mit zwei Fingern.
  • Langes Drücken: längeres Gedrückthalten mit einem Finger als bei normalem Tippen.
  • Doppeltippen: zweimaliges Tippen schnell hintereinander auf dieselbe Stelle auf dem Display.
  • Bildschirmdrehung/Zusammenklappen: Umgang mit Änderungen der Geräteausrichtung (z. B. zwischen Hoch- und Querformat) oder des physischen Zustands von faltbaren Geräten (z. B. Öffnen oder Schließen).
  • Informationen merken: Beibehalten und Abrufen bestimmter Informationen, Kontexte oder Nutzereingaben aus früheren Interaktionen oder Schritten.
  • Zählen: genaue Erfassung von Mengen, Häufigkeiten oder Fortschritt.
  • Bedingte Anweisungen: Ausführen von Aktionen je nachdem, ob andere angegebene Bedingungen erfüllt sind.

Es wird ständig an der Unterstützung von Funktionen gearbeitet. Wir empfehlen, diese Seite zukünftig wieder zu besuchen, um mehr über zusätzliche Funktionen zu erfahren. Geben Sie uns Feedback, damit wir Abläufe weiter verbessern können.

Ablauf ausführen

Sie können Ihren Ablauf auf jedem verfügbaren lokalen oder Remote-Gerät ausführen, ähnlich wie bei anderen instrumentierten Tests. Android Studio generiert aussagekräftige Ergebnisse, die Ihnen helfen, die Ausführung Ihres Ablaufs nachzuvollziehen.

So testen Sie einen Ablauf:

  1. Wählen Sie in der Hauptsymbolleiste ein Zielgerät aus, wie Sie es auch beim Ausführen eines instrumentierten Tests tun würden.
  2. Gehen Sie zu der XML-Ablaufdatei, die Sie testen möchten, und öffnen Sie sie im Editor.
  3. Führen Sie im Editor einen der folgenden Schritte aus:
    1. Wenn Sie sich in der Design-Ansicht befinden, klicken Sie auf  Ablauf ausführen.
    2. Wenn Sie sich in der Code-Ansicht befinden, klicken Sie im Zwischenraum neben der Stelle, an der der Name des Ablaufs im XML-Code definiert ist, auf  Test ausführen.

Android Studio erstellt für Sie eine Ablauftest-Konfiguration und führt sie auf dem Zielgerät aus. Während der Ausführung erstellt Android Studio Ihre App und stellt eine Verbindung zu Gemini her, um festzustellen, welche Aktionen für die einzelnen Schritte des Ablaufs ausgeführt werden sollen.

Der Bereich mit den Ergebnissen des Ablauftests in Android Studio, in dem Schrittdetails und die Schlussfolgerungen von Gemini angezeigt werden.
Der Bereich mit den Ergebnissen des Ablauftests in Android Studio, in dem Schrittdetails und die Schlussfolgerungen von Gemini angezeigt werden.

Abläufe für vorinstallierte Apps ausführen

Sie können einen Ablauf für eine vorinstallierte App auf Ihrem Testgerät ausführen. Das ist nützlich, wenn Sie eine Produktionsversion Ihrer App testen möchten oder Ihre App noch nicht auf Android-Gradle-Plug-in 9.0.0 oder höher aktualisiert haben.

  1. Öffnen oder erstellen Sie ein neues Projekt, das auf Android-Gradle-Plug-in 9.0.0 oder höher aktualisiert wurde.
  2. Schreiben Sie einen Ablauf.
  3. Bearbeiten Sie die Ausführungskonfiguration für den Ablauf und fügen Sie die folgenden Umgebungsvariablen hinzu. Es wird automatisch eine Ausführungskonfiguration erstellt, wenn Sie versuchen, einen Ablauf in Android Studio auszuführen.
    • Legen Sie JOURNEYS_CUSTOM_APP_ID auf die Paket-ID der Ziel-App fest.
  4. Führen Sie den bearbeiteten Ablauf aus. Android Studio sollte die Schritte des Ablaufs für die von Ihnen angegebene Ziel-App ausführen.

Ablauf über die Befehlszeile ausführen

Sie können einen Ablauf auch über die Befehlszeile als Gradle-Aufgabe ausführen.

Einrichtung

Sie müssen sich bei Google Cloud authentifizieren, um Abläufe über die Befehlszeile verwenden zu können.

Hinweis: In diesen Schritten werden Nutzeranmeldedaten über die gcloud CLI bereitgestellt. Das ist eventuell nicht für alle Entwicklungsumgebungen möglich. Weitere Informationen dazu, welches Authentifizierungsverfahren Sie für Ihre Anforderungen verwenden sollten, finden Sie unter Funktionsweise von Standardanmeldedaten für Anwendungen.

Folgen Sie der Anleitung unter gcloud CLI installieren, um die Google Cloud CLI zu installieren.

Für Nutzeranmeldedaten

Sie können die Autorisierung manuell mit dem folgenden Terminalbefehl durchführen:

gcloud auth application-default login

Für Dienstkonto-Anmeldedaten

Falls noch nicht erfolgt, folgen Sie der Anleitung zum Erstellen von Dienstkonto-Anmeldedaten für Ihr Projekt.

  • Achten Sie darauf, dass die IAM Service Account Credentials API für das Projekt aktiviert ist, in dem Sie die Dienstkontoschlüssel erstellt haben.
  • Vergewissern Sie sich, dass Ihrem Administrator und Ihrem Dienstkonto die Berechtigung Service Account Token Creator gewährt wurde.

Führen Sie zur Authentifizierung den folgenden Befehl aus:

gcloud auth application-default login --impersonate-service-account SERVICE_ACCOUNT_EMAIL

Als Gradle-Aufgabe ausführen

Führen Sie Abläufe aus, indem Sie die Gradle-Aufgabe direkt in der Befehlszeile ausführen. Nachdem Sie die Aufgabe ausgeführt haben, werden die Testergebnisse in den Logs angezeigt und HTML- und XML-Dateien mit den Testergebnissen werden generiert.

Alle Abläufe ausführen Mit dem folgenden Befehl können Sie alle Abläufe in der Test-Suite ausführen.

./gradlew :app:testJourneysTestDefaultDebugTestSuite

Einzelnen Ablauf ausführen Verwenden Sie JOURNEYS_FILTER wie folgt, um den Namen des Ablaufs anzugeben, den Sie ausführen möchten:

JOURNEYS_FILTER=your_journey_name.journey.xml ./gradlew :app:testJourneysTestDefaultDebugTestSuite

Alle Abläufe in einem Unterverzeichnis ausführen Legen Sie JOURNEYS_FILTER auf den Namen des Unterverzeichnisses fest. Mit dem folgenden Befehl werden beispielsweise alle Abläufe im Unterverzeichnis home innerhalb des Stammverzeichnisses der Test-Suite ausgeführt.

JOURNEYS_FILTER=home ./gradlew :app:testJourneysTestDefaultDebugTestSuite

Ergebnisse ansehen

Wenn Android Studio den Test Ihres Ablaufs abgeschlossen hat, wird automatisch der Bereich „Testergebnisse“ mit den Ergebnissen angezeigt.

Der Bereich mit den Ergebnissen des Ablauftests in Android Studio, in dem Schrittdetails und die Schlussfolgerungen von Gemini angezeigt werden.
Der Bereich mit den Ergebnissen des Ablauftests in Android Studio, in dem Schrittdetails und die Schlussfolgerungen von Gemini angezeigt werden.

Im Vergleich zu anderen instrumentierten Tests, die Sie in Android Studio ausführen, gibt es einige Unterschiede bei der Darstellung der Ergebnisse für Abläufe.

  • Im Bereich Tests wird der Ablauf in die einzelnen Schritte unterteilt. Sie können auf die einzelnen Schritte klicken, um weitere Informationen dazu zu erhalten, wie Gemini sie ausgeführt hat.
  • Im Bereich Ergebnisse finden Sie detaillierte Informationen dazu, wie Gemini Ihren Ablauf verstanden und durchdacht hat und wie er ausgeführt wurde.
    • Die Screenshots, die an Gemini gesendet wurden, werden zur visuellen Unterstützung bei jeder Aktion im Schritt angezeigt.
    • Neben jedem Screenshot wird die jeweilige Aktion und die Begründung von Gemini für diese Aktion beschrieben.
    • Jede Aktion im Schritt ist nummeriert.

Bekannte Probleme

  • Beim Testen eines Ablaufs werden standardmäßig alle Berechtigungen für Ihre App erteilt.
  • Wenn Sie einen Ablauf auf einem Gerät mit Android 15 (API-Level 35) testen, wird auf dem Gerät möglicherweise die Warnung Unsichere App blockiert für AndroidX Crawler angezeigt. Sie können auf Trotzdem installieren klicken, um diese Prüfung zu umgehen. Alternativ können Sie Entwickleroptionen auf dem Gerät konfigurieren und die Option Apps per USB verifizieren deaktivieren.