TimeNET ist ein interaktives Softwarewerkzeug, das die Modellierung stochastischer Petri-Netze vereinfachen soll. In diversen studentischen Arbeiten wurden verschiedenste Funktionen der Software entwickelt und die bereits bestehenden weiter optimiert. Dies hatte zum einen zur Folge, dass TimeNET inzwischen in Version 4 mit deutlich mehr Funktionalitäten im Vergleich zum Vorgänger TimeNET 3.0 zur Verfügung gestellt werden konnte. Jedoch zog diese Vorgehensweise zum anderen auch Nachteile mit sich, da eine Vielzahl unterschiedlicher Entwickler an dem Projekt beteiligt war. Jede neu programmierte Funktion wurde vor deren produktiver Nutzung zwar für sich auf ihre Funktionsweise hin überprüft, eine Prüfung der gesamten TimeNET-Software auf Fehler wurde jedoch nach mehreren Entwicklungszyklen immer schwierige
Die Erfahrungen beim Testen der Testtools haben gezeigt, dass es Unterschiede in der Eignung für das TimeNET-Projekt gibt. Generell für den Anwendungszweck „Testautomatisierung der TimeNET-GUI“ ungeeignet ist das Tool Sikuli. Aus diesem Grund wird es auch in der anschließenden Gegenüberstellung der einzelnen TestWerkzeuge aus der Betrachtung ausgeschlossen. In nachfolgender Übersicht sind die einzelnen Vor- und Nachteile der verbliebenen Tools gegenübergestellt. Für jedes Kriterium wurden verschiedene Punkte anhand der gesammelten Erfahrungen vergeben.
Merkmal | QF-Test | Ranorex | GUIDancer | Maveryx |
---|---|---|---|---|
Kosten | - | -- | ++ | +++ |
Unterstützte Plattform(en) | +++ | - | +++ | +++ |
Testfähige Anwendungen | +++ | +++ | +++ | - |
Auf Java spezialisiert | +++ | - | +++ | +++ |
Logfiles und Analysemöglichkeiten | +++ | +++ | +++ | + |
Automatische Ausführbarkeit | +++ | +++ | + | + |
Bedienbarkeit/Einarbeitungszeit | ++ | - | ++ | + |
Zusammengefasst sind die wichtigsten Kriterien, wie zum Beispiel die anfallenden Kosten, welche Betriebssysteme unterstützt werden oder ob das Tool speziell zum Testen von JavaAnwendungen entwickelt wurde. Im Gegensatz zu den ersten sechs Kriterien ist beim letzten Kriterium der Einarbeitungszeit zu beachten, dass diese Bewertung subjektiver Natur ist. Sie beruht auf den Erfahrungen der Autorin bei der Einarbeitung in die jeweiligen Tools. Gemäß dieser Übersicht überwiegen die Vorteile von QF-Test sowie GUIDancer.
Es gibt zwei Tools, die für den Einsatz als GUITestautomatisierungs-Werkzeug geeignet erscheinen und somit zur Nutzung empfohlen werden können. Dies ist zum einen das kostenpflichtige Tool QF-Test, welches jedoch einen nicht unerheblichen Preisnachlass für akademische Projekte gewährt. Zum anderen würde sich auch das Werkzeug GUIDancer anbieten. Beide Tools laufen sowohl unter Windows, als auch unter Linux sowie zusätzlich unter Mac OS und sind auf das Testen von JavaAnwendungen spezialisiert. Die Entscheidung für eines der beiden Tools ist nach Auffassung der Autorin in erster Linie von den Kosten abhängig. QF-Test ist insgesamt professioneller und insbesondere die umfangreichen Support-Möglichkeiten sprechen für die Anwendung dieses Tools. Dem gegenüber stehen jedoch die Kosten und es ist abzuwägen, ob diese für die Universität tragbar sind. Sind die monetären Aufwände das ausschlaggebende Kriterium, sollte man sich für das kostenfreie GUIDancer entscheiden.
Die Verfasserin dieser Seminararbeit empfiehlt, dass sowohl QF-Test, als auch GUIDancer eingehender evaluiert werden sollten. Im Zuge dieser Arbeit war es nicht möglich, direkt am TimeNET-Projekt zu testen, da dies den Zeitrahmen der Bearbeitung deutlich überschritten hätte. Dies könnte in einer weiterführenden wissenschaftlichen Arbeit durchgeführt werden. Nachdem eine Entscheidung für eines der untersuchten Tools getroffen wurde, wäre es anschließend denkbar, die ersten Testfälle für das TimeNET-Projekt zu erarbeiten. Außerdem würde es Sinn machen, eine Dokumentation zur Anlage von Testfällen für TimeNET zu erstellen. Zunächst lag die Anforderung dieser Seminararbeit bei der Neuerstellung eines Testtools, was sich jedoch als nicht nützlich erwies, da bereits eine ausreichende Zahl derartiger Werkzeuge auf dem Markt verfügbar ist. So ergaben sich neue Anforderungen mit Aufwänden, die zu Beginn der vorliegenden Arbeit nicht abzusehen waren. Dennoch konnte nach der Evaluation der diversen Testtools ein Überblick erarbeitet und damit eine Handlungsempfehlung für das TimeNET-Projekt formuliert werden. Aus Sicht der Autorin sollte unabhängig von der letztlich getroffenen Entscheidung das Thema Testautomatisierung in jedem Fall weiterhin im Fokus der Projektleitung bleiben. Softwaretests tragen deutlich zu einer besseren Softwarequalität bei und sichern diese langfristig.
Wie Ludwig van Beethoven bereits feststellte:
„Sich selbst darf man nicht für so göttlich halten, dass man seine eigenen Werke nicht gelegentlich verbessern könnte.“ Ludwig van Beethoven (1770 – 1827)
Den Evaluationsberichts können Sie hier (PDF) lesen.
Hauptseminar: Entwurf einer Testautomatisierung der TimeNET-GUI - Dezember 2012, Katharina Schröder, Technische Universität Ilmenau, Deutschland.