Erste Hilfe beim Testen in einer agilen Umgebung - TIP1

Oktober 6, 2016
Testen in einer agilen Umgebung

Die Agile/Scrum-Methodik wird zunehmend in der Systementwicklung und -verwaltung eingesetzt. Ihr Ziel ist es, neue oder geänderte Software häufiger für das Unternehmen verfügbar zu machen. Zu diesem Zweck wird in Scrum-Teams in kurzen Zyklen gearbeitet (diese werden "Sprints" genannt). Eine wichtige Aufgabe der Scrum-Teams ist es, die Änderungen ordnungsgemäß zu testen. Im Vergleich zu einer klassischen Wasserfallmethode liefert die Agile/Scrum-Methode dem Unternehmen viel schneller einen Mehrwert. Dies ist ein großer Vorteil. Denken Sie darüber nach, mit agilen Methoden zu beginnen, bei denen das Testen eine wichtige Rolle spielen wird? Aber Sie wissen nicht, woran Sie alles denken sollen? Das ist kein Problem. Basierend auf unseren Erfahrungen und Erkenntnissen haben wir drei Schwerpunkte zusammengestellt, die beim Testen in einer agilen Umgebung zu beachten sind. In einer Serie von 3 Blogs werden wir diese drei Schwerpunkte diskutieren. In diesem Blog: die Bedeutung von Allround-Testern.

Der Schein trügt...

In einem Scrum-Team ist das Testen sehr wichtig, aber leider steht das Testen meist unter großem Druck. Die Erfahrung zeigt, dass es oft vorkommt, dass am Ende des Sprints noch eine Menge Tests durchgeführt werden müssen. Dabei wird die Erfahrung gemacht, dass der Schwerpunkt auf der Erfüllung der geplanten Ergebnisse liegt (Team Commitment). Es ist dann oft naheliegend, das Testen auf der Ebene zu halten, indem man zum Beispiel nur die "Happy Flows" testet. In dem Moment, in dem diese Tests erfolgreich sind, ist die "Definition of Done" erfüllt und der Sprint kann abgeschlossen werden. Der Kunde ist zufrieden, das Team ist zufrieden, alle sind zufrieden.

Aber nein, so sind die Dinge nicht. Der Schein kann trügerisch sein. Aus Erfahrung können wir sagen, dass die meisten Scrum-Teams diese Art des Testens nicht lange durchhalten. Das kommt Ihnen vielleicht bekannt vor. Die Folge ist in der Tat, dass das Team selbst die Hauptlast unzureichender Tests trägt. Es kommt zu Produktionsproblemen, die gelöst werden müssen. Und wie Sie sich vielleicht denken können, geht hier ein Großteil der Zeit drauf.

Und das ist nicht die Absicht, denn das Hauptaugenmerk sollte auf der Entwicklung von Lösungen liegen, auf die das Unternehmen wartet.

Genau aus diesem Grund ist ein gründlicher Testansatz innerhalb eines Scrum-Teams, das von einem Allround-Tester geleitet wird, eine unabdingbare Voraussetzung. Dieser Tester verfügt über umfassende Kenntnisse und Erfahrungen in den Bereichen Testen, agiles Arbeiten, Geschäftsprozesse und Testwerkzeuge.

Prüfer im Team

Natürlich muss der Allround-Tester selbst gut testen können, aber noch wichtiger ist die Tatsache, dass er anderen im Team beim Testen hilft. Die Organisation rund um das Testen wird in Scrum-Teams oft vernachlässigt. Es wird wenig Zeit auf die Vorbereitung und Ausarbeitung von Skripten verwendet. Es sollte klar sein, dass innerhalb jedes Testtyps genügend Tests durchgeführt wurden. Regressionstests sind typischerweise ein wichtiger Test, dem in einem kleinen Team aber wenig Aufmerksamkeit geschenkt wird. Der erfahrene Tester kann dies einrichten und sich mit den Testern in anderen Teams abstimmen.

Geschäftsabläufe

Das ultimative Ziel der agilen Arbeitsweise ist es, einen Mehrwert für das Unternehmen zu schaffen. Und Mehrwert bedeutet fast immer, dass das Unternehmen seine Arbeit besser erledigen kann: effizienter und/oder effektiver. Es ist ein großer Vorteil, wenn der Tester die Geschäftsprozesse kennt und eine Helikopterperspektive hat. Auf diese Weise hat der Tester den Überblick und kann gegebenenfalls Anpassungen vornehmen, um sicherzustellen, dass alle Tests richtig aufeinander abgestimmt sind. Dies führt letztendlich zu einem besseren Ergebnis. Außerdem unterstützt ein Tester, der die Geschäftsprozesse gut kennt, das Unternehmen besser bei der Durchführung der Abnahmetests.

Agiles Arbeiten

Sie können das Testen in einer agilen Umgebung nicht mit dem Testen in der traditionellen Wasserfallmethode vergleichen. Und hier geht es hauptsächlich um die Phasen des Testens. Agiles Arbeiten bedeutet, dass man schnell auf das reagieren muss, was im Team oder in der Umgebung passiert. Dies wirkt sich auch auf das Testen aus. Das Testen orientiert sich eng an der dynamischen Umgebung, was zu einem gründlichen Testen führen sollte (dokumentiert oder nicht). Eine Aufgabe für den Allround-Tester im Team, der ständig darauf aufmerksam macht.

Soft Skills

Schließlich ist es gut zu wissen, dass Soft Skills sehr wichtig sind, wenn es um den Allround-Tester geht. Natürlich sind Wissen und Erfahrung wichtig, aber darüber hinaus muss der Tester in der Lage sein, gut zu kommunizieren und gegenüber dem Product Owner und dem Unternehmen rechenschaftspflichtig zu sein. Er oder sie muss sich stets auf das Testen konzentrieren, Teammitglieder beim Testen unterstützen und das Team motivieren. Soft Skills in Kombination mit einem großen Verantwortungsbewusstsein sind wichtig, denn wenn Probleme in der Produktion auftreten, ist die Schlussfolgerung schnell gezogen: schlechtes Testen. Unserer Erfahrung nach ist es ein kluger Schachzug, einen Allround-Tester in das Team aufzunehmen.

Gutes Testen in einem Scrum-Team ist ohne die Unterstützung von Tools nicht möglich. Sowohl im Hinblick auf die Verwaltung von Tests als auch auf die Automatisierung der Ausführung. Der nächste Blog "Erste Hilfe für das Testen im agilen Umfeld: Robuste Testautomatisierung" wird dies näher erläutern.
Dies ist der erste Tipp aus der 3er-Serie "Erste Hilfe für das Testen im agilen Umfeld".

Klicken Sie hier, um uns auf LinkedIn zu folgen und über die beiden anderen Tipps zum Testen in einer agilen Umgebung informiert zu werden.

Wollen auch Sie besser und intelligenter testen?

Entdecken Sie unsere benutzerfreundlichen Cloud-Produkte

Testersuite verwendet Cookies. Bitte geben Sie an, welche Cookies Sie akzeptieren. Weitere Informationen finden Sie in unserer Datenschutzerklärung.