Testautomatisierung – so gehts
Erfolgsfaktor Testautomatisierung (Teil 3)
Nun habe ich in den letzten beiden Teilen viel über CI, Unit-Testing und diverse andere Prozess-orientierte Punkte gesprochen. Dies war aus Deep-Dive-Sicht ausserordentlich wichtig, um ein Gesamtbild darzustellen, was eine erfolgreiche Testautomatisierung ausmacht. Die beiden vorherigen Beiträge sollen vor allem eines verdeutlichen: Es ist nie ein Punkt alleine, der zum Erfolg führt, sondern immer das Zusammenwirken aller Faktoren, die das optimale Ergebnis und damit den Gesamterfolg liefert.
In diesem Beitrag möchte ich einen, wenn nicht sogar zwei Schritte zurück gehen und aus meiner Sicht einmal die wesentlichen Punkte aufzählen, an denen man den Erfolg einer solchen Vorhabens ableiten und vor allem auch messen kann. Denn jeder dieser Punkte lässt sich zumindest in Erfolgskategorien wie zum Beispiel nicht vorhanden, teilweise vorhanden, oder vorhanden, oder nicht umgesetzt, teilweise umgesetzt, oder komplett umgesetzt aufteilen. Nimmt man nun zum Beispiel das Spider-Diagramm aus Excel, kann man hervorragend den Status der Voraussetzungen visualisieren. Hierbei würde ich allerdings empfehlen, von der zuvor beschriebenen Kategorisierung Abstand zu nehmen und vielmehr auf eine numerische Skala zu wechseln. Ein Wertebereich zwischen Null und fünf in 1er-Schritten wäre aus meiner Sicht ideal. Somit spart man sich das Mapping von einer textuellen Kategorisierung hin zu einer numerischen Bewertung und vereinfacht so die Generierung des oben erwähnten Diagramms. Wie das aussehen könnte zeige ich im nachfolgenden Diagramm:
…und damit kommen wir auch gleich zu den im Radar-Chart vorweg genommenen Faktoren, die eine erfolgreiche Testautomatisierung ausmachen:
- Maturität der Applikation (SUT)
- Automatisierbarkeit der Test-Elemente
- Qualität / Verfügbarkeit der Testdaten
- Installation / Verteilung der Software
- Fachliche Kompetenz der TA
- Stabilität der Test-Sets
- Wiederverwendbarkeit der Tests
- Skalierbarkeit der Tests
Wie eingangs erwäht ist nicht ein einzelner Faktor für den Erfolg einer Testautomatisierung verantwortlich, sondern alle Punkte zusammen. Wobei man allerdings die oben genannten Punkte durchaus priorisieren kann und auch sollte. Aus meiner Erfahrung heraus sind die wichtigsten beiden Punkte die Maturität der Applikation und die Qualität der Daten. Diese beiden Punkte haben die höchste Gewichtung in der Bewertung und sollte als erstes in den Fokus genommen werden. Aller anderen Punkte sind auch meiner Sicht nachgelagerte Faktoren.