Software Testautomatisierung

Testautomatisierung

Als Regressionstests werden automatische Tests bezeichnet, die die Software täglich zu definierten Zeiten testen. Das automatisierte Testen und die Einführung der Testautomatisierung in den QS-Prozess sind kein "Muss", um qualitativ hochwertige Software zu produzieren. Was kostet die Testautomatisierung? Kontaktieren Sie uns, um zu besprechen, wie unser Wissen im Bereich der Software-Testautomatisierung Ihr Unternehmen optimieren kann.

Wie viel kann Software-Testautomatisierung kosten?

Was kostet die Testautomatisierung? Wie viel können wir einsparen, wenn wir die Testautomatisierung konsequent umsetzen und wie lange wird es brauchen, um den Return on Invest "ROI" zu erwirtschaften? Das Beantworten dieser Frage ist eine wichtige Voraussetzung, um eine sachkundige Entscheidungsfindung für oder gegen die Etablierung der Testautomatisierung zu haben. Dabei ist zu berücksichtigen, dass bei der Implementierung von automatisierten Testverfahren nicht nur die Ressourcenschonung im Mittelpunkt steht, sondern auch die Möglichkeiten, gleichzeitig eine deutlich bessere Testabdeckung zu erhalten und damit die Softwarequalität zu erhöhen und verkürzte Entwicklungszeiten zu realisieren.

Ich möchte, bevor ich mich ausführlicher mit dem Computer beschäftige, erläutern, warum Testautomatisierung von Bedeutung ist. Viele Softwarehersteller verlassen sich in der agile Branche nicht nur auf die Automation von Rückführungstests, sondern auch auf die Einbindung von Prüfungen in die Continuous Integrations (CI). Dieser enthält dann auf GUI-, Komponenten- und/oder Interface-Ebene Test Cases.

Die Testautomatisierung findet daher auch Eingang in DevOps, wo sich die Abläufe (Ops) ändern werden. Diese ist nicht mehr nur für den Auf- und Ausbau der (Test-)Infrastruktur, das klassische System-Engineering-Team, sondern auch für den Auf- und Ausbau und die Einbindung der automatischen Prüfungen und damit für das "Continuous Testing" verantwortlich.

Im CI integrierte automatische Prüfungen liefern zeitnahe Informationen über den Qualitätsstatus der Software. Der Test läuft sowohl auf GUI-Ebene als auch auf Komponenten- und/oder Interface-Ebene nicht nur automatisiert ab (z.B. nachts), sondern ist in einen vollautomatischen Build-Prozess eingebunden. Eventuelle Nebenwirkungen nach einer Anpassung der Software werden sofort nach der Umstellung ersichtlich.

Häufig wird in der Anwendung die Auffassung vertreten, dass die Testautomatisierung auf diese Weise ohne Rücksicht auf den Nutzwert und die effektiven Betriebskosten einführbar ist. Viele Testautomatisierungsprojekte, die auf der Seite vorgestellt wurden, sind zum Misserfolg verdammt, weil es zu früh war, um zu erkennen, was für die Testautomatisierung vonnöten ist.

Oftmals mangelt es dem Unternehmen an der nötigen Hilfe, weil es sich als schwer herausstellt, einen unmittelbaren Return on Investment (ROI) zu errechnen. Normalerweise führen diese zu einem allmählichen Absterben der vorhandenen automatischen Testskripts. Zur Erleichterung der Entscheidungsfindung, ob eine Testautomatisierung durchgeführt werden soll oder nicht, haben wir den Testautomatisierungsrechner mit der langjährigen Expertise der Testingenieure aufgesetzt.

Mithilfe dieses Werkzeugs können Sie die Gesamtkosten und den ROI (Return of Investment) abschätzen. Die Kostenersparnis im Vergleich zu manuellen Prüfungen wird angezeigt. Auf dieser Grundlage sollte entschieden werden, ob es sich in Ihrem Falle empfiehlt, die Prüfungen zu automatisieren. 2. Werden z. B. nur wenige Versionen pro Jahr verschickt, kann die Durchführung von Prüfungen kostengünstiger sein.

Beispielsweise werden die Ausgaben für die Tool-Evaluierung, einmalige und wiederkehrende jährliche Lizenzgebühren und die Ausgaben für die Tool-Schulung der Mitarbeiter nicht mitberücksichtigt. In der Testautomatisierung wird oft zu viel Wert auf die GUI gesetzt. Für eine ausgeglichene Testautomatisierung ist es jedoch notwendig, die unterschiedlichen Automatisierungsgrade zu berücksicht.

Andererseits soll auf der GUI-Ebene möglichst wenig Automatisierung realisiert werden. Mit GUI-Änderungen droht die große Pflegebedürftigkeit der automatischen Testskripte. Neben dem Pflegeaufwand sind auch die Prüfungen auf GUI-Ebene sehr zeitaufwendig. Letztere können zwar kostenfrei genutzt werden, der Integrationsaufwand in eine komplex vorhandene IT-Infrastruktur sollte jedoch nicht unterbewertet werden.

Kleine Veränderungen in der zu prüfenden Software können ohne ein tragfähiges Rahmenwerk dazu beitragen, dass viele überflüssige Verbesserungen in den Testskripts erforderlich werden. In manchen Fällen ist es auch erforderlich, die Softwareentwickler zu überdenken, wenn es um die Testfähigkeit einiger Funktionalitäten geht. Ob die Zurverfügungstellung zusätzlicher Funktionalitäten (z.B. Schnittstellen), die eine effektivere Prüfung erlauben oder die Investition in eine einfachere Erkennung von Objekten.

Jeder, der den Gebrauch solcher Bauteile planen sollte, sollte sich vorher mit der Abteilung Testautomatisierung in Verbindung setzen. Andernfalls besteht die Möglichkeit, dass diese Bauteile später nicht oder nur mit hohem Zusatzaufwand automatisiert werden können. Software-Testautomatisierung? Die Testautomatisierung hilft, die Softwarequalität und damit auch die Softwarequalität deutlich zu steigern.

Mehr zum Thema