In der heutigen Geschäftswelt wird von Test-Mitarbeitenden immer mehr gefordert. Meist müssen sie mit immer weniger Ressourcen in kürzester Zeit immer mehr leisten. Um diesen Anforderungen nachzukommen, bedarf es Tools wie z.B. JIRA.
Was ist JIRA?
JIRA ist ein Softwareprogramm, dass Firmen dabei hilft ihre Vorgänge, Aufgaben und Prozesse zu verwalten. JIRA wurde bei Altassian (dem Hersteller) als eine Möglichkeit, Vorgänge im Sinne von Software "Bugs" zu verfolgen, entwickelt. Über die Jahre wuchs es zu einem hochflexiblen und anpassbaren Werkzeug heran, um Arbeitsaktivitäten wie Planen, Nachverfolgen, Ausführen und Berichten innerhalb eines Teams zu verwalten. Dabei kann der Workflow individuell an die Bedürfnisse eines Teams angepasst werden. Zusätzlich gibt es einige Plugin-Module, die besondere Lösungen zu spezifischen Problemszenarien bieten (z.B. Zephyr, Xray, qTest scenario, etc.). Mit all diesen Weiterentwicklungen, hat sich JIRA zu einem mächtigen Testmanagement-Tool entwickelt.
Was kann JIRA?
- Ticketing (Bsp. IT-Helpdesk) – Automatisches Handling individueller Aufgaben oder Aufträge, die einem Ressourcenpool zugewiesen werden.
- Prozesse und Abläufe – Die grosse Stärke von JIRA liegt im Bereich der wiederholbaren Prozessabläufe. Ein Prozess ist eine Serie von Ativitäten oder Aufgaben, die für das Erfüllen eines Ziels erforderlich sind.
- Auftragsarbeit als Team – In einem Projekt werden viele zusammenhängende Aufgaben durch verschiedene Mitarbeiter, innerhalb eines festgelegten Zeitraums, ausgeführt und in JIRA verwaltet.
Mit JIRA kann der Projektmanager einfach den Fortschritt des kompletten Projektes verfolgen; zum Beispiel mit Burn down charts, Velocity charts oder Sprint Berichten.
Einführung von JIRA
Je nach Organisation, Budget etc., sind verschiedene Test-Tools im Einsatz. Es wird ein Prozess definiert um die Resultate im Sprint (Bearbeitungsstand und/oder Abschluss der Testaktivitäten) mit JIRA zu verbinden.
Folgende Fragen sind vor Einführung von JIRA zu klären:
- Welche JIRA-Elemente sind relevant?
- Wie sieht das Taskboard aus und wann ist eine Testaktivität „Done“?
- Welche Testaktivitäten werden gewünscht (Entwicklertests, Manuelle Tests, Abnahmetest oder Regressionstests)?
Arbeit mit JIRA
Die JIRA-Einführung ermöglicht Unternehmen ein professionelles, systematisches und effektives Testmanagement.
Alle Infos und Stati müssen fortlaufend aktualisiert und ergänzt werden. JIRA erlaubt alle Entwicklungs- und Testaufgaben in einem Tool zu bewirtschaften und sorgt somit für Transparenz während dem Sprint.
Die Arbeit mit JIRA bringt einige Vorteile mit sich:
Für jedenTask/Testfall ist sein entsprechender Status jederzeit klar ersichtlich und ermöglicht so eine schnelle Reaktion bzw. weitere Bearbeitung durch den jeweiligen Benutzer. Somit lässt sich auch die Dauer und der Fortschritt der verschiedenenTätigkeiten verfolgen und auswerten.
- In JIRA können Prioritätsstufen frei und den Bedürfnissen des Unternehmens entsprechend definiert werden. Wichtig dabe ist, dass die Prioritätsstufen zuvor im Team festgelegt und klar kommuniziert werden.
- Übersichtliche Auswertungen zum Zeitaufwand für eine Tätigkeit. Somit kann jede Aufgabe durchleuchtet und bei Bedarf gezielt auf Probleme in der Ausführung reagiert werden. Es ist zudem ersichtlich, wo die Aufgaben stocken und die Ursachen dafür liegen (Mitarbeiter/Abteilung, etc.). Ebenso können die Fortschritte der Testaktivitäten ausgewertet werden.
- Es ist weiterhin möglich, Aufwände für die jeweiligen Testfälle zu dokumentieren. Sie dienen für zukünftige, ähnliche Projekte als Kalkulationsbasis.
- Dashboards können in JIRA individuell und übersichtlich gestaltet werden. Hierzu gibt es eine grosse Menge an Tutorials im Internet zu finden. Mit seinem Dashboard sieht der Benutzer seine relevanten und wichtigen Ergebnisse auf einem Blick (Aufgaben, Status der Aufgaben, beteiligte Personen im jeweiligen Projekt, Burn down charts etc.). Das Layout des Dashboards kann je nach Projekt verändert oder erweitert werden. Dashboards können mit Kollegen geteilt und der Zugriff kann gegenüber Dritten aber auch eingeschränkt werden.
JIRA als Testmanagement-Tool
Um JIRA auch im Testmanagement einzusetzen, sollte die Software um ein (kostenpflichtiges) Plugin wie z.B. Zephyr oder Xray erweitert werden. Diese beiden Plugins sind sehr verbreitet.
Zephyr wurde speziell für JIRA entwickelt und bietet ein durchgängiges Issue-Tracking und Testmanagement innerhalb von JIRA.
Es ist leider nicht möglich in Zephyr die Hierarchien darzustellen. Das ist jedoch notwendig, um Testfälle sinnvoll zu strukturieren. Eine Lösung wäre, über Filter zu arbeiten.
Bilder können in Zephyr nicht einem einzelnen Testschritt zugeordnet werden, sondern werden als "normaler" Anhang dem Issue-Typ angehängt. Daher sollten die testschrittspezifischen Bilder mit dem Schrittnamen (z.B. Step_01_Bild_xy) versehen werden. Auch eine Verlinkung innerhalb des Schritts zum Bild ist nicht möglich.
Xray ist ein Add-on für das Verwalten und Kreieren von Tests, das sich nahtlos in JIRA integrieren lässt. Xray unterstützt manuelle Tests und liefert Berichte, um die Testabdeckung von JIRA Softwareprojekten zu verfolgen.
Beim automatisierten Testen muss man mit Xray einen etwas grösseren Umweg machen. Denn aus Xray kann der automatisierte Testfall nicht direkt angestossen werden. Der Testfall muss in eine Datei exportiert und diese dann mit einem anderen Programm ausgeführt werden. Die Resultate können anschliessend in Jira/Xray eingelesen werden.
Hier gibt es zwei Möglichkeiten, den sogenannten Export von Feature Files und den Import der Result Files. Jedoch gibt es eine einfachere Lösung:
Über die REST API können Testpläne/Testruns/Tests abgefragt, geupdated und gelöscht werden. Dadurch entsteht die Möglichkeit, durch einen CI Server die bestehenden Testpläne/Testruns/Tests diese, über die jeweilige ID, abzufragen, auszuführen und nach der Ausführung zu aktualisieren, bzw. mit dem Resultat dieser zu updaten. Dazu kann z.B. Curl oder ein anderes Tool welches eine REST API ansprechen kann, verwendet werden. Die Testpläne und Testruns mit den jeweiligen Tests liegen im Cucumber Format vor. Auch die Tests selbst können im Cucumber oder in einer für das zu verwendete Framework verständlicher, z.B. Key Word Driven, Sprache geschrieben werden. Die Tests können auch in Prosa geschrieben werden.
Xray liefert Diagramme und Statistiken mit einer Testabdeckung von Anforderungen und exportiert die Testberichte in PDF- und Word-Dokumente. In der neuesten Xray-Version gibt es neu auch einen Testplan. Ziel des Testplans ist es, eine wirksame Testplanung zu realisieren, und zwar durch Verfolgung relevanter Tests und deren Ergebnisse. Der Testplan ermöglicht es dem Benutzer, einen besseren Überblick und ein besseres Management über seine Tests zu erhalten. Dies erfolgt durch eine, dem Benutzer zur Verfügung gestellte Tabelle, welche alle dem Testplan hinzugefügten Tests und ihre jeweiligen Testausführungen, die ebenfalls dem Testplan zugeordnet sind, anzeigt. Aus dem Testplan ist es möglich, eine oder mehrere Testausführungen für alle oder nur eine Teilmenge der im Testplan enthaltenen Tests zu erstellen.
Fazit
Wie bei jedem neuen Tool muss man sich im Vorfeld überlegen, welche Ziele mit JIRA erreicht werden sollen. Was muss die Software abdecken damit die internen Prozesse und Tests reibungslos durchlaufen? Die Anforderungen müssen bereits vor der Einführung von JIRA feststehen.