Wer bei der Testautomatisierung auf individuell zusammengestellte Open Source Komponenten setzt, statt teure statische Test-Suites zu lizensieren, spart nicht nur Budget. Testautomatisierung mit Open Source führt häufig auch schneller zum Ziel.
Warum Testautomatisierung mit Open Source sinnvoll ist
Beinahe jeder Geschäftsprozess wird von mehreren, oft verschiedenartigen IT-Anwendungen unterstützt. Eine Änderung in einer dieser Anwendungen sollte vor der Inbetriebnahme einen Test der gesamten Geschäftsprozesse nach sich ziehen. Mindestens aber die Kerngeschäftsprozesse sollten nach jeder Änderung getestet werden.Derartige Regressionstests sind in hohem Maße für die Testautomatisierung geeignet. Große Unternehmen setzen dabei der Einfachheit halber meist auf Automatisierungs-Lösungen der Marktführer. Diese Test-Suiten ziehen oft erhebliche Lizenzkosten nach sich, ohne dass die Lösung an die Bedürfnisse des Kunden angepasst ist oder die eigene Anwendung überhaupt unterstützt wird.
Eine Alternative zu kommerziellen Tools – sowohl im Hinblick auf Flexibilität und Funktionsumfang, als auch auf die Lizenzkosten – ist der Einsatz von Open Source Testwerkzeugen.
Testautomatisierung mit Open Source Werkzeugen: vorab sind einige Entscheidungen zu treffen:
- Zunächst ist zu klären, welche Geschäftsprozesse im Rahmen einer Regression zu testen sind und wie hoch der Aufwand dafür ist. Gute Kandidaten sind in der Regel langlebige und häufig durchgeführte Geschäftsprozesse.
- Dann ist zu klären, welche Werkzeuge eingesetzt werden können. Am Markt sind freie Werkzeuge verfügbar, mit denen Anwendungen auf verschiedenen Desktop- und mobilen Betriebssystemen oder Browsern gesteuert und überprüft werden können. Für bestimmte Anwendungsfälle haben sich DeFacto Standards durchgesetzt, dennoch ist eine sorgfältige Analyse der eigenen Umgebung nicht nur ratsam, sondern in der Regel kostenmindernd für die spätere Entwicklung der Testfälle.
- Ein weiterer Aspekt bei der Auswahl der Geschäftsprozesse ist der benötigte Anpassungsaufwand im Rahmen der Testfallerstellung und Pflege. Müssen z. B. HTML-Elemente angepasst werden, um eine eindeutige Identifizierung der Seitenelemente zu ermöglichen, ist dies weniger Kostenintensiv, als die Erstellung eines neuen FatClients, wenn dieser Elementerkennung nicht zulässt. Die Testfälle mit dem besten Kosten-Nutzen-Verhältnis sind gute Kandidaten.
- Hier gilt insbesondere: je höher Risiko und Ausfallwahrscheinlichkeit, desto wahrscheinlicher lohnt sich ein automatisierter Test
- Zu guter Letzt gilt es, häufig verwendete Testmechanismen (z. B. Login, Mail Versand, etc.) zu identifizieren, um sowohl das Werkzeug, als auch die Anforderungen zentralisiert ablegen zu können.
Häufig besteht die Anforderung, einen Prozess auf einem oder mehreren Systemen mit Microsoft-Betriebssystem und/oder Linux mit verschiedenen Webanwendungen in verschiedenen Browsern und Fat-Clients integriert zu testen. Für diese Kombination lässt sich eine einfache Lösung finden, sofern im Unternehmen das nötige Realisierungs-Knowhow vorhanden ist.
Für Webanwendungen ist Selenium zurzeit das Mittel der Wahl. Mit der Selenium IDE steht auch eine Möglichkeit zur Verfügung, reine Weboberflächen-Tests aufzuzeichnen. Die integrierte Betrachtung von Fat-Clients ist damit allerdings nicht möglich. Hinzu kommt, dass das richtige Werkzeug zum Testen von Fat-Clients nicht so einfach zu finden ist. Letztlich hat sich für uns der Einsatz von Autohotkey in Kombination mit dem Einsatz von Bibliotheken aus der Microsoft-Welt als der sinnvollste Weg herausgestellt. Dabei sollte nach Möglichkeit mit programmatischer Elementerkennung gearbeitet werden und nur wenn diese nicht zum Erfolg führt, auf Bilderkennung oder heuristische Analysen zurückgegriffen werden. Soll nun noch ein Ergebnis in einer Datenbank überprüft werden, z.B. Microsoft Access oder MySQL gilt es schon drei Open Source Komponenten miteinander zu verbinden.Eine Integrationsmöglichkeit der genannten Werkzeuge bietet der Einsatz einer Integrationsumgebung durch die Erstellung von einheitlichen Schnittstellen. Das viadee Testframework (vTF) bietet eine Java-basierte Integrationsumgebung, die vollständig autark und unkompliziert in die bestehende Systemlandschaft integriert werden kann und an beliebigen Endgeräten die Entwicklung, Durchführung und Dokumentation von automatisierten Testfällen unterstützt.
Von der Test- zur Prozessautomatisierung: aus vtf wird mateo
Das ehemalige viadee Testframework (vTF) hat sich weiterentwickelt. Um dem Leistungsumfang des gewachsenen Produktportfolios gerecht zu werden, erscheint es unter neuem Namen. Erfahren Sie mehr über Testautomatisierung mit mateo core, das Testen von Weboberflächen mit mateo web und robotergesteuerte Prozessautomatisierung mit mateo rpa.
zurück zur Blogübersicht