In diesem Artikel möchten wir Ihnen die App “Xray” für Jira vorstellen. Jira ist eine Webanwendung für agiles Projektmanagement, Fehlerverwaltung und Problembehandlung. Ursprünglich wurde Jira vor allem in der Softwareentwicklung verwendet, hat sich jedoch mittlerweile auch in vielen anderen Bereichen eine Anwendung gefunden.
In Jira werden Projekte durch Aufgaben bzw. Vorgänge (Issues) dargestellt. Aufgaben können in Projekten organisiert, Benutzern zugewiesen und mit Deadlines versehen werden. Dargestellt werden können diese Aufgaben mittels agiler Boards (wie etwa Scrum- und Kanban-Boards), was Jira gerade für agile Teams zu einem interessanten Tool für das Projektmanagement macht.
Die Architektur von Jira ist darauf ausgelegt, dass Drittanbieter das Tool mit eigenen Erweiterungen ausstatten können. Eine dieser Erweiterungen - das Tool Xray zur Fehlerverwaltung - möchten wir Ihnen in diesem Artikel vorstellen.
Motivation von Xray
Bei Xray handelt es sich um eine Erweiterung der Jira-Plattform, die zum Verwalten von Testprojekten entwickelt wurde. Xray zeichnet sich durch seine Skalierbarkeit und seine Möglichkeiten aus, mehrere Benutzer an einem Projekt mitarbeiten zu lassen.
In einem komplexeren Testprojekt ist es vonnöten, den Testprozess durch ein geeignetes Modell abzubilden. So müssen u.a. zu Beginn des Projektes Anforderungen an den Testprozess gesammelt und dokumentiert werden. Aus den Anforderungen werden in einem weiteren Schritt Testbedingungen und Testfälle abgeleitet. Schlussendlich werden die Testfälle zu Testplänen zusammengestellt, welche sich automatisiert ausführen lassen können. Weiterhin sollten die Ergebnisse der Tests dokumentiert werden und die Rückverfolgbarkeit der Testfälle zu den Anforderungen gewährleistet bleiben.
Xray unterstützt hierbei den gesamten Prozess von der Planung der Testfälle bis hin zu deren Ausführung und dem Reporting. Hierbei wird dem Tester die Arbeit abgenommen, eine eigene Infrastruktur für ein Testprojekt aufbauen zu müssen, beispielsweise mittels Dokumentation der Testfälle in Word-/Excel-Files und einer Kommunikation über E-Mails. Die Nutzung von Xray führt zu einer deutlichen Zeitersparnis und somit einer Steigerung der Qualität und der Effizienz eines Testprojektes.
Xray für das Testmanagement mit Jira
Xray erweitert Jira um vordefinierte Issue Types, um die Testentitäten abzubilden. Dies ermöglicht die einfache Interaktion von Xray mit anderen Erweiterungen für Jira. So können folgende Entitäten angelegt werden:
- Tests: In dieser Entität wird der eigentliche Test festgehalten. Sie können definieren, welche Aktion der Testfall testen und wie das zu erwartende Ergebnis aussehen soll. Tests lassen sich in einzelne Schritte untergliedern. Auch für diese Schritte lassen sich Testbeschreibungen und erwartete Ergebnisse definieren.
- Pre-Conditions: In dieser Entität können Sie festlegen, welche Vorbedingungen für einen Test erfüllt sein müssen, damit dieser ausgeführt werden kann. Beispielsweise kann eine Vorbedingung beinhalten, dass eine Testdatenbank mit vordefinierten Datensätzen eingerichtet und bereitstehen muss. Eine Vorbedingung kann mehreren Tests zugeordnet werden.
- Test Set: Tests können in Gruppen, den Test Sets, zusammengefasst werden. Alternativ lassen sich Tests auch in einer Ordnerstruktur, den sogenannten Repositories organisieren.
- Test Execution: Mittels dieser Entität lassen sich Testzyklen planen. Test Executions fassen eine Menge von Testfällen zusammen, welche entweder manuell oder automatisiert ausgeführt werden sollen.
- Test Plan: Mittels der Entität Test Plan lassen sich Test Execution Entitäten zu einem übergreifenden Testplan zusammenfassen. Weiterhin ermöglicht dies ein übergreifendes Reporting der Tests, die während der Testausführung durchgeführt werden.
Rückverfolgbarkeit
Xray stellt die Rückverfolgbarkeit der Testfälle zu Ihren Anforderungen sicher, indem sich Testfälle mit den Aufgaben aus dem Scrum- bzw. Kanban-Board des Projektes verknüpfen lassen. Somit lässt sich u.a. die Testüberdeckung eines Features und die Qualität der Implementierung dieses Features leicht beurteilen.
Reporting
Nach dem Durchführen der Testfälle ist es nötig die Testergebnisse zu dokumentieren, um den Fortschritt des Testprojektes und die Qualität der getesteten Software beurteilen zu können. Hierfür stellt Xray eine graphische Oberfläche zur Verfügung, die den beteiligten Personen einen Überblick über die vorhandenen Testfälle und deren Ausführungsverlauf gewährt. Wir möchten Ihnen dieses Feature von Xray anhand eines Beispielprojektes demonstrieren.
In der folgenden Ansicht sehen Sie das sogenannte “Testing Board” von Xray, in dem eine Auflistung der Testfälle zu sehen ist. In diesem Fall wurden Tests in Form eines Repositories organisiert. Sie sehen die drei Testfälle mit den Bezeichnungen “QTAF-1”, “QTAF-2” und “QTAF-3”. Bei diesen Testfällen handelt es sich um manuelle Testfälle, d.h. dass diese von einem Tester manuell auf einem Gerät gestartet werden müssen. Die Ergebnisse des Testens lassen sich jedoch automatisiert über die REST-API-Schnittstelle von Xray eintragen. Diese drei Testfälle werden in unserem Beispielprojekt die Startseite von Google aufrufen, einen Text in das Suchfeld eintragen und anschließend diese Suchanfrage abschicken.