So löst du automatisierte Tests mit Xray und Jira aus
Sergio Freire
Head of Solution Architecture and Testing Advocacy, Xray
Im Folgenden findest du eine schrittweise Anleitung zur Verwendung von Xray Cloud, einem Tool für Continuous Integration (CI), das automatisierte Tests auslöst und Ergebnisse über einen Xray-Testplan liefert.
Zeit
Lesedauer: 7 Minuten. In zwei Stunden abgeschlossen.
Zielpublikum
Du bist ein erfahrener Xray- und Jira-Benutzer, du arbeitest an einem Projekt in GitLab und du hast automatisierte Tests eingerichtet. Du möchtest eine einfache Methode einrichten, um automatisierte Tests in Xray auszulösen, damit auch nichttechnische Teammitglieder von der Automatisierung profitieren können.
Voraussetzungen
Du hast ein Projekt in GitLab eingerichtet. Lege hier mit GitLab los.
Du hast einen Testplan mit Tests in Xray erstellt. Lege hier mit Xray für Jira los.
Du hast ein aktives Jira-Projekt mit installierter und konfigurierter GitLab-Anwendung. Lege hier mit Jira los.
Warum ist die Automatisierung von Tests wichtig?
Die Testautomatisierung reduziert manuelle Eingriffe durch wiederholbare und stabile Prozesse, erhöht den Test-ROI, beschleunigt Tests und Feedback und senkt letztendlich die Geschäftskosten.
Schritt 1: Generiere einen API-Schlüssel.
Wechsle zunächst zu den API-Einstellungen in Xray und generiere einen API-Schlüssel. Speichere dann die Client-ID und den Geheimcode des Clients.
Schritt 2: Erstelle ein Gitlab-Token.
Gehe in Gitlab zu den Einstellungen und dann zu CI/CD. Erstelle im Abschnitt "Pipeline triggers" (Pipeline-Trigger) einen Trigger und benenne ihn. Auf diese Weise wird ein Trigger-Token erstellt.
Tipp: Du kannst diesen Prozess einfach für andere Frameworks wie Jenkins, Robot Framework und Bamboo replizieren.
Schritt 3: Stelle eine Verbindung zu Xray her.
Definiere die Basis-URL des Xray-Endpunkts und die API-Schlüsselanmeldeinformationen. Wechsle dazu zum Abschnitt "Variables" (Variablen), um drei Variablen hinzuzufügen: zwei Variablen für die Client-ID und den Xray-Geheimcode sowie eine Variable für den Endpunkt.
Erstelle in deinem Gitlab-Repository, das den Code und die Tests des Projekts enthält, als Nächstes eine Konfigurationsdatei für die Pipeline.
In diesem Beispiel wird die Pipeline mithilfe der API von Gitlab ausgelöst. Sie erhält den Testplan-Vorgangsschlüssel als Eingabeparameter. Anschließend werden der Build einschließlich der automatisierten Tests ausgeführt und die Ergebnisse mithilfe des Dienstprogramms Curl an Xray zurückgemeldet.
Schritt 4: Erstelle den Trigger mit Automation for Jira.
1. Erstelle in den Jira-Einstellungen unter "Automation" (Automatisierung) eine neue Regel und lege den Punkt "When" fest (d. h wann ausgelöst werden soll). Stelle "Manual trigger" (Manueller Auslöser) ein.
2. Lege als Nächstes die Bedingung fest, dass diese Regel nur aus dem Vorgang für den Testplan ausgeführt werden kann.
3. Definiere eine Aktion (das "Dann"), lege dafür "Send web request" (Webanfrage senden) fest und konfiguriere sie mit der URL des Gitlab-Projekts.
4. Lege für "Content-Type" (Inhaltstyp) als Header "Multipart form data" (Mehrteilige Formulardaten) fest.
5. Füge zuletzt unter "Custom Data" (Benutzerdefinierte Daten) die zuvor erstellten Token-Daten ein.
6. Klicke auf "Save" (Speichern), um die Regel zu veröffentlichen.
Schritt 5: Führe den Trigger aus.
Gehe zurück zu deinem Testplan-Bildschirm und führe den Auslöser aus. Deine Tests werden ausgeführt und als bestanden oder fehlgeschlagen angezeigt.
Dann bist du fertig. Dies ist eine einfache Möglichkeit, die Testautomatisierung auszulösen und alle deine Ergebnisse in Xray zu visualisieren.
Sie ist nur eine der vielen Methoden, wie Xray alle deine Testaktivitäten zentralisiert und es allen Teammitgliedern eines Softwareentwicklungsprojekts ermöglicht, gemeinsam die Qualität zu verbessern.
Möchtest du mehr erfahren?
Weitere Informationen zur Arbeit mit Automatisierung findest du in der Dokumentation von Xray.
Diesen Artikel teilen
Nächstes Thema
Lesenswert
Füge diese Ressourcen deinen Lesezeichen hinzu, um mehr über DevOps-Teams und fortlaufende Updates zu DevOps bei Atlassian zu erfahren.