Paste your Bing Webmaster Tools verification code here

Ein Unternehmen, das in kürzester Zeit eine neue oder bessere Software auf den Markt bringen möchte, greift oft auf agile Entwicklungsmodelle. Agile Methoden wie Scrum versprechen eine schnellere Produktion einer Software mit besserer Berücksichtigung der Kundenanforderung und einer besseren Softwarequalität. Das Umstellen auf agil ist allerdings nicht ganz einfach. Jedes Teammitglied muss die gewohnten Prozesse und Gewohnheiten ablegen und anfangen agil zu denken. Für den langfristigen Erfolg eines Softwareprojektes, einer Softwareabteilung oder sogar eines ganzen Unternehmens ist der Softwaretest und die Qualitätssicherung ganz entscheidend beteiligt.

 

Wenn das Thema Agile Testing angesprochen wird, wird meistens von Unit Tests ausgegangen. Agile Testing ist aber mehr als nur Unit Tests, welches auch als Entwicklertest bekannt ist. Unit Tests sind alleine nicht ausreichend, um die Qualität der Software zu sichern und dem Kunden eine saubere und zuverlässige Software zu liefern. Agile Testing soll die Lücke zwischen der agilen Softwareentwicklung und dem traditionellen Testen schließen.

Agile Testing kann dazu beitragen, das Potential agiler Methoden voll zu entfalten.

Kompakt beschrieben, ist Agile Testing die Realisierung automatisierte Tests in Integrationstests und in Systemtests und nicht nur die Tests in Unit Tests. Auch Programmierer, die Ihren Code intensiv mit Unit Tests prüfen,  vernachlässigen oft die Integrationsaspekte.

 

Testmanagement in Agile Testing

In einem agilen Team z.B. in Scrum gibt es nicht den klassischen Projektleiter, der dem Team sagt, was zu tun ist. Agile Methoden wie Scrum basieren darauf, dass sich das Team selbst organisiert.

Dementsprechend gibt es auch keine klassischen Testmanager im Agile Testing. Programmierung und Testen werden gemeinsam im selben Team getätigt. Testmanagementaufgaben existieren dennoch und werden z.B. in Scrum vom Scrum Master übernommen.

Dabei kümmert sich der  Scrum Master um die Testinfrastruktur und Testwerkzeuge und sorgt dafür, dass entsprechende Ressourcen und softwarespezifisches Testexpertisen vorhanden sind.

Die Testaufgaben werden anhand von Sprint-Planungen organisiert. Testaufgaben können somit über eigene Tasks geplant werden oder sind in den Done-Kriterien schon enthalten.

Testfortschritte und Testergebnisse werden im Agile Testing mit Continuous Integration automatisiert, sodass manuelle Auswertungen auf ein Minimum reduziert werden.

 

Teststrategie und Testplanung in Agile Testting

Beim Festlegen von Teststrategien und die inhaltliche Planungen von Tests sieht es hingegen etwas anders aus. In agilen Teams wie Scrum wird davon ausgegangen, dass alle Entscheidungen bzgl. Tests gemeinsam vorbereitet und getroffen werden.

Um solche Entscheidungen, ganz gleich ob im Test oder in anderen Fachgebieten, gemeinsam treffen zu können, ist Know-how und Erfahrung notwendig.

Daher sollte mindestens ein Teammitglied hauptsächlich für das Testen zuständig sein. Optimal für das Team wäre ein professioneller Softwaretester und Testspezialist mit genügend Testexpertise.

Dabei gehören zu den Aufgaben des Softwaretesters im Agile Testing das fachgerechte Aufsetzen von Softwaretests und die Realisierung der Softwaretests über alle Sprints.

Weiterhin berät der Softwaretester den Product Owner über die Softwarequalität und die Kriterien für Freigabe der Software.

 

Fehlermanagement in Agile Testing

Im Agile Testing und generell in agilen Projekten wie Scrum hat das Fehlermanagement eher eine niedrige Rolle. Dies kommt zustande, da Fehler in der Regel durch automatisierte Tests reproduzierbar sind.

Weiterhin stehen die Teammitglieder im ständigen Austausch und kommunizieren über aktuell bekannte Fehler. Fehler werden im Idealfall sofort nach der Entdeckung behoben.

Aber ganz ohne Fehlermanagement geht es im Agile Testing nicht. Ein Fehler muss  in jeden Fall in einem Fehlermanagementsystem erfasst werden, wenn der Fehler nicht durch einen automatisierten Test aufgedeckt worden ist, wenn der Fehler weitere Analysen und Entscheidungen benötigt, oder wenn der Fehler nicht mehr im selben Sprint behoben werden kann.

 

Haben Sie Fragen oder benötigen Sie Hilfe bei der Umsetzung von Agile Testing? Gerne helfen wir Ihnen weiter. Kontaktieren Sie uns einfach.