Herausforderung
Eine breite Palette von Technologien schuf eine anspruchsvolle Testumgebung, einschließlich einiger Anwendungen, die nur über die grafische Benutzeroberfläche getestet werden konnten.
Breites Spektrum an Technologien
Zu den Anwendungen gehören C++-Module, Java-Module, die sowohl Swing als auch Eclipse RCP verwenden, und einige mit Angular implementierte Webmodule. Außerdem gibt es mehrere GUI-Technologien wie QT sowie ältere Technologien wie das ISA-Framework oder VX/VA. Die Teststrategie musste alle diese Technologien abdecken.
Häufige Code-Updates von Drittanbietern
Das Team stellte zunehmend fest, dass Unternehmen, die Module von Drittanbietern liefern, ihre Versionen (d.h. JBOSS) häufiger aktualisierten als das interne Team. Daher benötigte das Team eine Möglichkeit, schnell Integrationstests für diese Drittanbieter-Module durchzuführen, bevor die neue Version für die Kunden freigegeben wurde.
Zeitaufwendige Rauchtests
Das Team wollte für jede Softwareversion einen Smoke-Test für alle Module durchführen, um grundlegende Funktionen wie das Öffnen der Anwendung, das Laden von Bibliotheken, das erfolgreiche Drucken usw. sicherzustellen. In einigen Fällen könnte dies jedoch Hunderte von Modulen bedeuten: ein zeitaufwändiger und mühsamer Prozess.
Ergebnis
Die Entwicklungsteams können aufgrund häufigerer Tests und kürzerer Testzyklen häufiger veröffentlichen und Fehler früher erkennen.
Um die richtige Testautomatisierungslösung für ihre Situation zu finden, führte das Team zunächst eine Reihe von Internetsuchen durch, um Kandidaten zu identifizieren. "Wir entschieden uns für Ranorex als erste Lösung und verbrachten dann ein oder zwei Wochen damit, sie auszuprobieren: Wir griffen auf alle verschiedenen Technologien zu, um zu sehen, wie sie läuft und in welchen Umgebungen. [Wir haben untersucht, wie es sich verhält, was passiert, wenn wir das Betriebssystem von Windows 10 ändern, um sicherzustellen, dass wir in einer Version entwickeln können und die Lösung nicht kaputt geht. Wir haben das alles getestet, dann den Preis berechnet und noch einmal geprüft, ob wir eine andere Lösung finden, die dasselbe leisten kann. Aber wir haben keine bessere Lösung gefunden. Dann haben wir nach Referenzkunden gefragt, und wir haben einen in Berlin gefunden. Mit denen haben wir einen Tag verbracht, und auch das war sehr hilfreich."
Obwohl Funktionsfreigaben nach einem vierteljährlichen Zeitplan auf der Grundlage von Kundenwünschen erfolgen, kann es zu täglichen Freigaben für die interne Umgebung kommen. Jetzt spart das Team viel Zeit, indem es automatisch Smoke-Tests für alle Module in einer Version durchführt - auch wenn diese Hunderte von Modulen umfassen kann.

Empfehlungen
In Bezug auf die Einführung der Testautomatisierung machte Frau Reimer die folgenden Vorschläge: "Man muss wissen, dass es Zeit braucht - vielleicht mehr, als man am Anfang denkt. Man muss wissen, dass man sich wirklich darauf einlassen und Zeit für die Implementierung und Wartung haben muss. Man muss sich Gedanken über den Prozess machen - was man mit der Automatisierung machen will, wann sie laufen soll, was zu tun ist, wenn man etwas findet, was, wenn die Lösung nicht mehr läuft. Es braucht Zeit, bis sich das Unternehmen an den neuen Prozess gewöhnt hat."
