4 Min. Lesezeit

TM4J von Adaptavist – Wie Agiles Testing Ihre Release-Effizienz steigern kann

TM4J von Adaptavist – Wie Agiles Testing Ihre Release-Effizienz steigern kann

Die qualitativ hochwertige und termin- sowie budgetgerechte Durchführung von Softwareprojekten in einem sich schnell verändernden Geschäftsumfeld ist eine große Herausforderung. In diesem Beitrag geht es um das TM4J - Test Management for Jira. Der englische Originaltext ist von Adaptavist - einem der führenden App-Hersteller im Atlassian-Kosmos.

Um diesen Herausforderungen besser gewachsen zu sein, haben in den letzten 15 Jahren viele Teams agile Verfahren, die einen iterativen Ansatz für Softwaredesign und -entwicklung bieten, übernommen. Laut dem State of Agile Report von VersionOne 2018 haben 75% der Unternehmen die Softwarebereitstellung beschleunigt und 46% die Softwarequalität verbessert.

Quelle: Adaptavist

Gründe für den Einsatz von Agilität

Kurz zusammengefasst, verstehen agile Methoden das Testen nicht als separaten Schritt, sondern als einen, in der Softwareentwicklung, integrierten Bestandteil. Agile Teams arbeiten als ein großes Team mit der gemeinsamen Zielsetzung eine hohe Softwarequalität zu erreichen. Traditionelle Testansätze, wie das Protokollieren von Bugs, das Verfolgen von Metriken, die Testplanung und das Schreiben detaillierter Testfälle scheinen nicht gut zur agilen Methodik zu passen. Agiles Testen ist entstanden, um genau diese Diskrepanz zu beräumen und hat zugleich eine neue Denkweise hervorgebracht -  Testen muss früh und oft erfolgen. Anstatt darauf zu warten, dass die Entwicklung abgeschlossen ist, ehe der Test beginnt, findet das Testen nun kontinuierlich statt, noch während Stories entwickelt werden.

Frühes und häufiges Testen

Das oberste Ziel eines agilen Teams ist es, in regelmäßigen Abständen neue Funktionen mit hoher Qualität und gleichbleibendem Tempo kontinuierlich bereitzustellen. Um diese anspruchsvollen Ziele zu erreichen, werden die Prinzipien der agilen Entwicklung auf die Praxis des Testens angewendet, d.h. agile Teams verfolgen einen ganzheitlichen Ansatz, um so die Qualität auf das Softwareprodukt zu übertragen. Agiles Testen verbindet Test- und Entwicklungsteams mit den Prinzipien der Kollaboration, Transparenz und Flexibilität, welche die Teams ermutigen, innerhalb kürzerer Release-Zyklen eine höhere Qualität der Softwareprodukte zu erreichen. Das Hauptziel ist es, sicherzustellen, dass die Qualität in die Verantwortung aller fällt und durch die Einführung von Tests Probleme, so früh wie möglich im Entwicklungszyklus, zu vermeiden.

Testautomatisierungen sind im agilen Testen sehr beliebt. Sie bieten die Möglichkeit, Softwaretests zu beschleunigen und effizienter zu gestalten. Automatisierte Tests bieten ein Sicherheitsnetz, welches verhindert, dass Refactoring und die Einführung neuer Codes zu unerwarteten Resultaten, Regressionen und Defekten führen. Darüber hinaus ermöglicht die Testautomatisierung kontinuierliche Tests während der gesamten Release-Zyklen.  Hierdurch können die Rückkopplungsschleife und die Kosten manueller Testansätze reduziert werden.

Eine effektive Strategie zur Testautomatisierung erfordert eine Automatisierung auf vielen verschiedenen Ebenen. Tatsächlich ermöglichen Tests vom Code- bis zum UI-Level (sowie auf allen Zwischenebenen) den Teams zu lernen, wie ein Produkt funktionieren sollte und was die wahre Definition von "erledigt" innerhalb einer Story oder eines Features bedeutet. Die von Mike Cohn populär gewordene Pyramide der agilen Testautomatisierung bietet gute Einblicke in die Steuerung agiler Teams mit automatisierten und manuellen Tests. Automatisiertes Testen der Benutzeroberfläche sowie manuelles und exploratives Testen stehen an der Spitze der Pyramide der Testautomatisierung, da man diese Vorgänge so weit wie möglich reduzieren möchte.

Quelle: Adaptavist

Agile Test-Quadranten

Bei agilen Methoden fühlen sich nicht nur die Tester oder QM-Teams für die Qualität verantwortlich. Die Grenzen bei der Rollenverteilung in einem agilen Team sind verschwommen. Daher müssen Tester und Entwickler eng zusammenarbeiten und entscheiden, wie sie ihr Produkt am besten optimieren können. Da agile Teams keine umfangreiche Dokumentation verwenden, um zu kommunizieren, was Tester tun müssen, verlassen sich die Tester auf agile Testquadranten zur Steuerung der Teststrategie.

Agile Test Quadranten (eingeführt von Brian Marick und weiterentwickelt von Lisa Crispin und Janet Gregory) bieten eine gründliche und hilfreiche Taxonomie, die den Teams hilft, die benötigte Testart zu identifizieren und zu planen. Die vier Testquadranten dienen als Richtlinien und Checkliste, um sicherzustellen, dass alle Arten von Tests während der Entwicklungszyklen abgedeckt (oder zumindest vom Team berücksichtigt) werden. Ein weiterer Vorteil der Quadranten ist, dass sie die gesamte Teststrategie in einer gemeinsamen, leicht verständlichen Sprache erklären können. Kurz gesagt, die Quadranten auf der linken Seite der folgenden Grafik decken Tests ab, die das Team bei der Entwicklung des Produkts unterstützen (Tests werden verwendet, um zu beurteilen, ob die Anwendung das von dem Team beabsichtigte Verhalten liefert).

Diese Tests bestimmen die Entwicklung der Funktionalität und tragen dazu bei, die interne Codequalität zu verbessern sowie zu überprüfen, ob sich die Geschäftslogik und die Benutzeroberfläche gemäß den Stories und Akzeptanztests verhalten. Quadranten auf der rechten Seite, konzentrieren sich auf manuelle Tests (oder Tests, die von Tools unterstützt werden). Das Verhalten der gesamten Anwendung wird validiert, indem reales Nutzerverhalten simuliert und zudem geprüft wird, ob die Applikation nicht-funktionale Anforderungen erfüllt (Leistung, Sicherheit, Benutzerfreundlichkeit, etc.).

Quelle: Adaptavist

Agile Tests mit Jira

Jira unterstützt jede agile Projektmanagement-Methodologie der Softwareentwicklung. Man kann Backlog in Sprints priorisieren und organisieren, Scrum-Zeremonien durchführen und vieles mehr, alles innerhalb von Jira, obwohl es zunächst nicht als agiles Testmanagement-Tool konzipiert wurde. Um von den agilen Testfunktionen auf Jira zu profitieren, muss die App Test Management for JIRA (TM4J) von Adaptavist, welche auf dem Atlassian Marketplace verfügbar ist, installiert werden. TM4J ist eine Enterprise-Testmanagement-Lösung mit einer modernen, nahtlos in Jira integrierten Benutzeroberfläche, die die Produktivität und Zusammenarbeit zwischen Entwicklungs- und Testteams für manuelle und automatisierte Tests steigert. Der TM4J ist eng mit Agile und Kanban Boards in Jira verknüpft.

Quelle: Adaptavist

TM4J bietet standardmäßig umfangreiche APIs für die Integration mit Automatisierungstools, CI/CD-Tools und Frameworks, die bereits verwendet werden, um Zeit und Aufwand zu sparen. Darüber hinaus unterstützt es die verhaltensbasierte Entwicklung mit Cucumber oder einem anderen, Cucumber-kompatiblen Tool, um so die Zusammenarbeit und das gemeinsame Verständnis zwischen Entwicklern, Testern und Domainexperten zu fördern.

Quelle: Adaptavist

Die Agile Methodik konzentriert sich auf die Kooperation und offene Interaktion zwischen Software-Entwicklungsteams, die in kurzen Sprints arbeiten, so dass sie sich auf die Fertigstellung einer kleinen Reihe von Funktionen konzentrieren können. Das hohe Tempo des Software Development erfordert einen neuen Ansatz für das Testmanagement. TM4J ermöglicht es Teams, alle Testaktivitäten, einschließlich Testplanung, Authoring, Ausführung, Tracking und Reporting, an einem Ort zu koordinieren, den Fortschritt und die Qualität eines Produkts zu messen, die Zusammenarbeit zu fördern und die Sichtbarkeit innerhalb agiler und traditioneller Teams zu verbessern.

Autor des englischsprachigen Originaltextes: Cristiano Caetano, Adaptavist


Weitere Infos

Die demicon GmbH ist einer der renommiertesten Atlassian Platinum Solution Partner in der DACH-Region. Unsere Consultants und Coaches sind Ihre Experten für Testmanagement und Testautomation. 

Wir freuen uns darauf, Sie kennenzulernen! 

TM4J - Continuous Testing in Jira skalieren

TM4J - Continuous Testing in Jira skalieren

Manueller Tests sind wesentliche Faktoren für hohe Projektkosten, Verzögerungen und fehlerhafte Software. Continuous Testing gilt daher als das...

Read More
Testmanagement und QA mit Xray for Jira

Testmanagement und QA mit Xray for Jira

In unserem neuen Blogbeitrag geht es um das Thema Testmanagement und QA für Jira. Der Autor des englischen Originaltextes ist Xpand IT-Produktmanager

Read More
XRAY - 6 Schritte zur Skalierung Ihrer Softwaretests in Jira

XRAY - 6 Schritte zur Skalierung Ihrer Softwaretests in Jira

Cutting Edge Test Management for Jira - So läuft Ihr Jira mit Xray reibungslos - unabhängig davon, ob Sie 1.000 oder 1.000.000 Testfälle haben. Im...

Read More