Testautomatisierung als Mittel zur Qualitätsverbesserung


Viele Banken, Industrieunternehmen und Dienstleister müssen mit komplexen IT-Systemen umgehen. Dabei fehlt es oftmals an Zeit und Geld, um veraltete Systeme zu ersetzen oder neu zu gestalten. Gleichzeitig besteht ein Zwang zu ständiger Weiterentwicklung dieser Systeme, da durch gesetzliche Vorgaben, neue Technologien und ein dynamisches Umfeld stetige Anpassungen erforderlich sind. Im Betrieb ist deshalb oft eine breite Palette miteinander verknüpfter Systeme zu betreuen. Die Spanne reicht von Legacy-Systemen über Standard-Software bis hin zu Eigenentwicklungen. Dazu kommen unterschiedliche Technologien, Release-Zyklen und Datenformate.

Gleichzeitig wird aber eine hohe Verfügbarkeit und Zuverlässigkeit dieser Systeme erwartet. Ausfälle und Probleme werden immer weniger toleriert und sorgen schnell für Negativ-Schlagzeilen.

Die Aufgabe

Damit ist eine komplexe Aufgabe entstanden: die Qualitätssicherung von stark heterogenen und vernetzten Systemen. Die dafür notwendigen Tests werden zudem immer aufwändiger. Ein einfaches Skalieren alter Testmethoden stößt rasch an Grenzen. Enge Zeitpläne, knappe Budgets und ein Mangel an qualifizierten Spezialisten erlauben kein „mehr vom Selben“.

Eine Lösungsmöglichkeit

Für diese Herausforderung ist die Testautomatisierung ein sehr zweckmäßiger Lösungsansatz. Auch wenn nicht alle Vorgänge dafür prädestiniert sind, können erfahrungsgemäß in nahezu in allen Testphasen hohe Automatisierungsquoten erreicht werden. Automatisierung beschleunigt die Testprozesse, indem manuelle, zeit- und ressourcenaufwändige Aktivitäten auf ein Minimum beschränkt werden. Dinge wie ein Load- und Performance-Test lassen sich ohne Automatisierung sowieso nur schwer umsetzen.

Die Entlastung von IT- und Fachexperten sowie die Einhaltung hoher regulatorischer und technischer Qualitätsstandards sind weitere Vorteile. Zusätzlich können Testprozesse mit wenig Mehraufwand beliebig oft wiederholt werden. Und der technische Fortschritt macht auch vor der Testautomatisierung nicht halt. Die Anzahl der verfügbaren Tools steigt ständig und bietet eine immer breiter werdende Palette an technischen Möglichkeiten.

Achtung Falle!

Die Einführung bzw. der Ausbau der Testautomatisierung ist aber mit einigen Hindernissen versehen. Glaubt man den Werbeversprechen, lassen sich mit dem Einsatz einiger weniger (und meist teurer) Werkzeuge Wunder vollbringen. Aussagen wie „vollständige Lösung für die Testautomatisierung“ oder „A single tool for all your test automation needs“ müssen mit Vorsicht betrachtet werden. Ohne eine gründliche Analyse und eine Prüfung auf Anwendbarkeit dieser Tools lassen sich die versprochenen Effekte leider nicht immer oder nur eingeschränkt erreichen. Es ist deshalb besonders wichtig, am Anfang die Weichen richtig zu stellen, damit die angestrebten Kosten- und Zeiteinsparungen bei gleichzeitiger Verbesserung der Qualität auch erreicht werden können.

Aufbau einer funktionierenden Lösung

Die Identifikation und Einführung von geeigneten Test- und Automatisierungsverfahren erfordert ein strukturiertes Vorgehen. Eine Testautomatisierung stellt eine Investition dar, die sich sowohl an den bestehenden Systemen als auch an der geplanten Weiterentwicklung orientieren muss. Andernfalls verwandelt sich die neue Lösung schnell in eine teure Altlast. Idealerweise sollte der Einsatz der Testautomatisierung schon von Anfang an eingeplant und auch in den Entwicklungsprozess integriert sein.

Wichtig ist eine langfristige Planung, auch in Hinsicht auf die erwarteten Einsparungspotentiale. Kurzfristige Effizienzsteigerungen lassen sich nur in Ausnahmefällen erreichen.

Ein häufig unterschätzter, oder gleich ganz übersehener Punkt ist die ständige Pflege und Weiterentwicklung der Testfälle. Nicht gepflegte Testfälle „veralten“ und sind nicht mehr ausführbar. Die Gründe dafür sind vielfältig. Geänderte Stammdaten und Konfigurationen und fehlende Anpassungen an funktionale Änderungen des zu testenden Systems sind die häufigsten Ursachen. Das Ergebnis ist aber dasselbe: der Testfall lässt sich nicht mehr ausführen. Je länger dieser Missstand nicht behoben wird, umso wahrscheinlicher ist ein „Totalverlust“. Der Testfall muss komplett neu erstellt werden. Je nach verwendeter Technologie und Anzahl der Release-Zyklen kann das recht schnell gehen.

Ebenfalls oft unterschätzt wird die Bedeutung der Testdaten. Automatisierte Testfälle lassen sich zwar schnell und oft ausführen, sie benötigen aber auch eine entsprechende Menge passender Testdaten. Insbesondere, wenn Testdaten „verbraucht“ werden, also nicht erneut für einen Test verwendeten werden können, kommt es schnell zu Problemen. Testfälle, die aus Mangel an Testdaten nicht ausgewertet werden können, entwerten das getätigte Investment ebenfalls. Ein passendes und im Vorfeld durchdachtes Testdatenkonzept gehört daher zu einer professionellen Einführung einer Testautomatisierung mit dazu.

Der GFT-Ansatz

GFT verfolgt eine differenzierte Vorgehensweise, um die hohen Anforderungen an einen optimalen Test zu erfüllen. Dabei werden auf verschiedenen Ebenen konkrete Tools und Techniken des Softwaretests betrachtet, um die speziellen Anforderungen des Kunden zu erfüllen. Als Beispiel sei hier das Test-Reporting zur Nachweisbarkeit und Nachvollziehbarkeit von Testergebnissen genannt. Gerade in stark kontrollierten Bereichen wie z.B. Finanzdienstleistungen, ist dies auf Grund von gesetzlichen Vorgaben unverzichtbar.

GFT agiert dabei als objektiver Berater, der über ein breites Spektrum an Erfahrungen und Tool-Kenntnissen verfügt und als unabhängiges Technologieunternehmen den „Best-of-Breed-Ansatz“ verfolgt – wir suchen die für Ihre Aufgabenstellung beste Lösung.

Unsere Experten identifizieren die fachlichen und technischen Herausforderungen und entwickeln ein sinnvolles Lösungskonzept. Zum Beispiel durch die Auswahl und den Einsatz adäquater Verfahren: Von der Entwicklung geeigneter Testszenarien über den erfolgreichen Nachweis der Umsetzung bestimmter gesetzlicher Anforderungen wie PSD2 bis hin zur Auswahl geeigneter Werkzeuge.

Mit erfahrenen Testern und Testmanagern begleiten wir sowohl die Organisation als auch die Implementierung des Verfahrens und gewährleisten das „Enabling“ Ihrer Mitarbeiter über Schulungen und Coaching. Außerdem stellen wir den Einsatz und Betrieb der Lösung und die fachliche Unterstützung im Betrieb sicher. Mit einem breiten Erfahrungsfundus und umfangreicher Expertise unterstützen wir Sie bei technologischen Herausforderungen wie dem Einsatz von RPA zur Testdatenerzeugung, Schnittstellen- und Unit-Tests, End2End Szenarien über mehrere Systeme hinweg bis hin zu den immer noch unerlässlichen manuellen Tests.


Ihre Ansprechpartner:

Markus Kaiser, GFT Testmanager (markus.kaiser@gft.com)
Birgit Küsel, GFT Senior Account Manager (birgit.kuesel@gft.com)

Post a Comment

* indicates required

Comment Area

  1. Stefan Salz1. November 2019

    Sehr schöner Artikel.
    Besonders der Punkt „ständige Pflege und Weiterentwicklung der Testfälle“ und „Testdaten“ zeigt ein Manko automatisierter Testfälle. Funktionale Abhängigkeiten innerhalb der Testfälle, Abhängigkeiten zu Testdaten und Schnittstellen lassen die ständige Pflege der bestehenden Testfälle und Testumgebung oft zu einem Kraftakt werden.
    Das Thema Testinfrastruktur fehlt ein wenig im Artikel und wird oft unterschätzt. Eine stets aktuelle und lauffähige Testinfrastruktur kann nur über automatisierte Prozesse gewährleistet werden und bedeutet zumeist zu Beginn einen hohen Aufwand.

    1. Markus Kaiser5. November 2019

      In der Tat ist das automatisierte Testen nicht für umsonst zu haben. Die Erstellung der notwendigen Infrastruktur und der Testfälle sowie deren ständige Pflege und Weiterentwicklung sind nicht zu unterschätzen. Sie sind aber als Invest und nicht nur als Kosten zu betrachten. Die Alternative der manuellen Testausführung bedarf ebenfalls einer permanenten Weiterentwicklung. Nur bei erheblichen Nachteilen bei der Testausführung, Abdeckung und erreichbaren Qualität!
      Je nach konkretem Anwendungsfall gibt es noch eine Reihe weiterer wichtiger Punkte bei der Testautomatisierung zu beachten. Das macht eine gründliche Analyse und Planung vor Beginn der Arbeiten – und eine laufende Kontrolle des Erreichten und Erreichbaren ! – ja so wichtig.