Testing
Einführung
Das rosoftlab Test Tool dient zur Automatisierung von Testablaufen die Benutzerinteraktion erfordern.
Das System ist in mehreren Komponenten gegliedert, welche in folgendem Diagramm im Zusammenhang gestellt werden, und in den naechsten Abschnitten beschrieben werden.
Sprache zur Beschreibung der Testfälle
Die Sprache dient zur Beschreibung von Sequenzen von Aufrufen und Ereignissen. Im Wesentlichen sind folgende Konstrukte enthalten:
• Ausfuehren einer Aktion (ueber den GUI Wrapper)
• Pruefen einer Bedingung, wenn nicht erfuellt, Warnung oder Testabbruch.
• Warten auf Ereignisse und Timeouts
• Optional: Zustandswechsel. Eine andere Sequenz von Anweisungen wird aktiv
Testfaelle die in der Skriptsprache beschrieben werden, sind direkt auf der Zielplatform ueber ein Interpreter ausgefuehrt.
GUI Wrapper
Der GUI Wrapper stellt die Schnittstelle zwischen zu testender Software und dem Testsystem her. Hin zum Testsystem werden mehrere Interfaces implementiert, waehrend die Implementierungsdetails dem Testsystem unbekannt bleiben.
Fuer jede zu Testende Zielsoftware muss ein neuer Satz an GUI Wrapper erstellt werden.
Benutzerinteraktion
Benutzerinteraktion ist in manchen Testcases erforderlich um Systemexterne Zustaende in einem Test einbeziehen zu koennen. Muss beispielsweise ein Test gefahren werden in dem zum Zielsystem ein ueber Bluetooth verbundenes Telefon einbezogen wird, so gibt es fuer das Testsystem keine direkte Moeglichkeit, den Zustand dieses Telefons auszuwerten oder zu beeinflussen.
Um Benutzereingaben und somit externe geraete im Test einzubeziehen gibt es auf der Zielplatform eine minimale GUI, die folgende Funktionen hat:
• Anzeigen von Meldungen (Testanweisungen, etc.)
• Anzeigen von Fragen an den Benutzer, bei denen Benutzerinteraktion erforderlch ist und deren antwort den weiteren Testablauf beeinflusst.
Auswertung / Visualisierung
Dieses separate Werkzeug ermoeglicht das genaue Analysieren der Ergebnisse der Testlaufe. Es koenen auch unterschiedliche Testdurchlaufe verglichen werden.
Funktionsbeschreibung
Um ein Testcase aufzubauen muessen zu aller erst GUI-Wrapper fuer das Zielsystem geschrieben werden. Die GUI-Wrapper sind danach in der Skriptsprache zur Beschreibung der Testcases verfuegbar. Es koennen jetzt beliebig viele Testcases beschrieben werden.
Nachdem der Testcase-Interpreter auf der Zielplatform installiert wurde, koennen die Testcases jetzt auf der Platform geladen und ausgefuehrt werden.
Waehrend der Ausfuehrung der Testcases ist ein Tester erforderlich, der die GUI des Testsystems beobachtet und eventuelle Aufforderungen befolgt (Z.B. “Jetzt bitte auf dem Telefon Bluetooth einschalten”).
Die Ergebnisse der Testdurchlaufe werden automatisch gespeichert und koennen Zusammen mit den Log-Dateien auf dem PC geladen werden und in dem Auswerte-Tool angezeigt werden.