Join us for Firebase Summit on November 10, 2021. Tune in to learn how Firebase can help you accelerate app development, release with confidence, and scale with ease. Register

Beginnen Sie mit dem Testen mit CI-Systemen

Sie können Firebase Test Lab verwenden, wenn Sie Ihre App mit einem beliebigen Continuous Integration (CI)-System entwickeln. Mit Continuous Integration-Systemen können Sie Ihre App jedes Mal automatisch erstellen und testen, wenn Sie Aktualisierungen Ihres App-Quellcodes einchecken.

Verwenden von Firebase Test Lab mit Jenkins CI

In diesem Abschnitt wird beschrieben , wie Testlabor mit verwenden Jenkins CI .

Anforderungen

Bevor Sie Firebase Test Lab mit Jenkins verwenden können, müssen Sie die folgenden Schritte ausführen:

  1. Richten Sie gcloud ein. Folgen Sie den Anweisungen Mit Firebase Test Lab aus dem gcloud Command Line ein Projekt Firebase erstellen und konfigurieren Sie Ihre lokale Google Cloud SDK Umgebung.

  2. Erstellen und autorisieren Sie ein Dienstkonto. Dienstkonten unterliegen keinen Spamprüfungen oder Captcha-Eingabeaufforderungen, die sonst Ihre CI-Builds blockieren könnten. Erstellen Sie ein Dienstkonto mit einer Editor Rolle in dem Google Cloud Console und dann aktiviert (siehe gcloud Auth activate-Service-Account Dokumentation zu lernen , wie).

  3. Erforderliche APIs aktivieren. Nach der Anmeldung des Dienstkontos bei der Verwendung: In der Seite API - Bibliothek Google Developers Console , aktivieren Sie den Google Cloud Testing API und Cloud - Werkzeug Ergebnisse API. So aktivieren Sie diese APIs, geben diese API - Namen in das Suchfeld am oberen Rand der Konsole, und klicken Sie dann auf API aktivieren auf der Übersichtsseite für die API.

Jenkins installieren und einrichten

Sie können Jenkins CI unter Linux oder Windows installieren und einrichten. Bestimmte Angaben in diesem Handbuch sind spezifisch für die Installation und Ausführung Jenkins CI unter Linux, einschließlich der Verwendung von Schrägstrichen ( / ) in Dateipfaden.

Zum Herunterladen und Installieren von Jenkins auf einem Computer unter Linux oder Windows, folgen Sie den Anweisungen auf dem Installieren von Jenkins . Nach der Installation von Jenkins, folgen Sie den Anweisungen auf Starten und Zugreifen auf Jenkins auf Setup und Zugriff auf das Jenkins Armaturenbrett.

Konfigurieren Sie globale Sicherheitseinstellungen

Jenkins hat bei der Erstinstallation keine Benutzerauthentifizierung und Zugriffssteuerung konfiguriert. Konfigurieren Sie vor der Verwendung von Jenkins mit Firebase Test Lab globale Sicherheitseinstellungen, um die Zugriffskontrolle zu erzwingen und Benutzer zu authentifizieren.

So konfigurieren Sie globale Sicherheitseinstellungen

  1. Navigieren Sie zum Jenkins-Dashboard auf Ihrem Server. Um dies zu tun, gehen Sie zu http: // <Servername >: 8080, wobei <Servername > ist der Name des Computers , auf dem Sie Jenkins installiert haben.
  2. Auf dem Jenkins Armaturenbrett, auf Verwalten Jenkins, und dann auf Konfigurieren Globale Sicherheit.
  3. Auf der Seite Einstellungen für die globale Sicherheit, klicken Sie auf Sicherheit aktivieren, und dann auf Speicher.

Weitere Informationen über die Sicherheitseinstellungen für Jenkins - Konfiguration finden Sie schnelle und einfache Sicherheit , Standard - Sicherheitseinstellungen und Absichern von Jenkins .

Erstellen Sie ein Jenkins-Projekt

Erstellen Sie als Nächstes ein Projekt zum Ausführen von Continuous Integration-Tests Ihrer App mit Firebase Test Lab.

So erstellen Sie ein Jenkins-Projekt

  1. Navigieren Sie zum Jenkins-Dashboard auf Ihrem Server. Um dies zu tun, gehen Sie zu http: // <Servername >: 8080, wobei <Servername > ist der Name des Computers , auf dem Sie Jenkins installiert haben.
  2. Auf dem Jenkins Armaturenbrett, klicken Sie auf Neues Element.
  3. Geben Sie einen Namen für Ihr Projekt im Feld Elementname:
    • Wählen Sie Freestyle - Projekt , ein Projekt zu erstellen , die eine einzelne Build - Konfiguration verwendet.
    • Wählen Sie Build - Multi-Konfigurations - Projekt ein Projekt , das läuft auf mehreren unterschiedlichen Build - Konfigurationen zu erstellen. Wenn Sie Ihre App mit einer Vielzahl von Build-Konfigurationen erstellen möchten (mehrere Gebietsschemas, mehrere Android-API-Ebenen usw.), ist ein Projekt mit mehreren Konfigurationen die beste Wahl.
  4. Klicken Sie auf Speichern.

Nachdem Ihr Projekt erstellt wurde, zeigt Ihr Webbrowser die Hauptseite Ihres Projekts an.

Hinzufügen von Revisionskontroll- und Gradle-Build-Schritten

In diesem Abschnitt wird beschrieben, wie Sie Jenkins in Revisionskontrollsysteme wie GitHub integrieren und wie Sie Gradle-Buildschritte hinzufügen, um APK-Pakete aus Quellcode zu erstellen.

Integration mit GitHub und anderen Revisionskontrollsystemen

Wenn Sie GitHub oder ein anderes Revisionskontrollsystem verwenden, um den Quellcode für Ihre App zu verwalten, können Sie Jenkins so konfigurieren, dass automatisierte Builds und Tests jedes Mal ausgeführt werden, wenn Updates für Ihre App eingecheckt werden. Sie können Jenkins auch so konfigurieren, dass Builds regelmäßig ausgeführt werden.

Um zu erfahren , baut in Jenkins - Konfiguration finden Sie Konfigurieren von automatischen Builds .

Hinzufügen von Gradle-Build-Schritten zum Neuerstellen von APK-Paketen

Wenn Sie ein Revisionskontrollsystem verwenden, um den Quellcode für Ihre App zu verwalten, müssen Sie jedes Mal, wenn Jenkins Quellcode von Ihrem Revisionskontrollsystem herunterlädt, einen Gradle-Build-Schritt einschließen, um neue APK-Binärdateien zu erstellen.

  1. Fügen Sie einen Build - Schritt die folgenden Befehle im Hauptverzeichnis für Ihre Anwendung auszuführen:

    ./gradlew :app:assembleDebug
    ./gradlew :app:assembleDebugAndroidTest
    

  2. Fügen Sie einen Build-Schritt hinzu, um die APK-Pakete zu verwenden, die von Gradle beim Testen mit Test Lab erstellt wurden. Sie können diesen Pfad als <local_server_path> verwenden in dem Shell - Skript Beispiel unten angegeben, wobei <AppFolder> ist die Android Studio Projektordner für Ihre Anwendung:

    <AppFolder>/app/build/outputs/apk
    

Hinzufügen von Test Lab-Build-Schritten zu Jenkins

Jetzt können Sie Jenkins einen Build-Schritt hinzufügen, um Test Lab über die gcloud-Befehlszeile auszuführen.

So fügen Sie einen gcloud-Build-Schritt hinzu

  1. Von der Hauptseite für Ihr Projekt auf Konfigurieren.
  2. Auf der Konfigurationsseite Projekt, blättern Sie zu dem Build - Abschnitt, und wählen Sie Shell aus dem Add Build - Schritt - Menü Ausführen.

  3. Führen Sie Shell - Befehlsfenster, geben Sie in der Jenkins die folgende, substituierende <local_server_path> für den Pfad zu der Beispielanwendung auf dem Server <app_apk> für Ihre App APK, und <app_test_apk> für App-Test APK:

    gcloud firebase test android run --app <local_server_path>/<app_apk>.apk
    --test <local_server_path>/<app_test_apk>.apk
    

Testergebnisse analysieren

Nach dem Test Lab Testen der App abgeschlossen ist , können Sie die Testergebnisse in der Firebase Konsole oder in einer Bewertung Google Cloud Storage Eimer in Ihrem Projekt. Sie können auch einen hinzufügen gsutil Befehl an den Shell - Befehl oben gezeigt , die Testergebnisse Daten auf dem lokalen Computer zu kopieren. Um mehr zu erfahren, siehe Analyse Firebase Test Lab Ergebnisse .

Kontinuierliche Integration mit anderen CI-Systemen

Informationen zur Verwendung von Firebase Test Lab mit anderen CI-Systemen finden Sie in deren Dokumentation: