Verändert sich die Testerrolle in DevOps ?

DevOps ist derzeit in aller Munde. Grundsätzlich steht DevOps für Development & Operation. Hat dies noch etwas mit meiner bisherigen  Rolle im Testing zu tun? Wir wollen  Software in hoher Qualität liefern. Ich möchte aufzeigen, dass sich die  Rolle des Testers verändert aber auch bestehen bleibt.

klassisches Testing

In der klassischen Methode (Beispiel V-Modell) werden die Testaktivitäten in einer dedizierte Testphase in den meisten Fällen von einem oder mehreren Testteams (Testmanager, Testengineer, Tester) übernommen. In diesen Testphasen werden die fachlichen  Systemprozesse, Business Szenarien, Last– und Performanceszenarien im Zusammenwirken mit allen Umsystemen getestet. Der Testfocus des Testteams  wird in diesem Modell eher auf End  to End gesetzt. Die Tester müssen eher fachliche Skills haben. Die Testbasis stellt die Gesamtheit der Informationen dar. Die erforderlichen Systemanforderungen und das Systemverhalten definiert. In der Praxis wird leider der Focus (Erfahrung Testmanagement von über 15 Jahren) der Testbasis auf Business Szenarien und Fachspezifikationen gesetzt. Das Testteam prüft demnach erst  am Schluss des Entwicklungsprozesses die Anforderungen an die zu liefernde Software. Dies hat Auswirkungen bei Fehlverhalten (länger  Bugfixing Zeiten, Testphasenverlängerung). Die Regressiontestfälle werden wenn möglich automatisiert, leider in den meisten Fällen auf der UI – Ebene automatisiert. Was gemäss Testautomatisierungpyramide nur die Spitze ist. Was bei dieser Methode auffällt ist, dass die verschiedenen Teams nicht eng zusammen arbeiten . Die zu bearbeiteten Aufgaben werden einfach weitergeleitet oder sogar vergessen.

Shift Left-Testing

Wir haben im  agilen Team jeweils vom Entwickler, über den Tester mit Entwicklung- Skills , bis zum Produktmanager und Business-Analysten  eingesetzt. Das Team nimmt zusammen an Meetings teil, überprüft gemeinsam Code, testet zusammen und entscheidet, wann die Funktion fertig ist. Der Focus der Testbasis  ist auf der Prozess- und technische Spezifikationen. Es ist ein Prozess, der eine bessere teamübergreifende Zusammenarbeit ermöglicht, indem jeder in demselben Team, von Testern bis hin zu Produkt-Managern unterstützt wird. Somit gibt es z.B. keine dedizierte Testphase mehr, sondern das Testing wird kontinuierlich durchgeführt, im Idealfall bei  jedem Build. Dieses kontinuierliche Testing bedingt natürlich auch einen hohen Grad an Automatisierung, insbesondere Testautomatisierung. Ein Vorteil dieser Methode ist, dass die  Aufgaben schneller bearbeitet und die Resultate schneller bereit sind. Das Team arbeitet enger zusammen und reagiert auf Fehlverhalten der Software frühzeitig.

Fazit
Die Testrolle verändert sich. Es wird künftig (noch) mehr geistige Flexibilität brauchen.  Tester müssen sich technische  Skills aneignen und die Softs Skills werden weiter an Bedeutung gewinnen. Reine Routine-Arbeiten, den gleichen Testfall x – mal durchführen, wird  hingegen künftig kaum noch vorkommen.

Beitrag teilen

Schreibe einen Kommentar