Download Testtools für Java/Swing -Benutzungsoberflächen - QF-Test

Transcript
Testtools für Java/Swing-Benutzeroberflächen
Zum Schluss wird eine ”Aufräumen” Sequenz erzeugt um die Anwendung zu beenden. Sie
besteht aus zwei Schritten: Der Knoten „Programm Beenden“ beendet den von qftestJUI
gestarteten Prozess und Knoten „Warten auf Programmende“ stellt sicher, dass er auch wirklich
terminiert wurde. Die Aufräumsequenz wird, wie auch bei der Vorbereitungssequenz, nach jeder
Sequenz bzw. jedem Test innerhalb des umschließenden Tests ausgeführt. Sie dient dazu, die
Applikation nach dem Ausführen eines Tests in einen spezifischen Zustand zu versetzen,
welcher die Basis für den darauf folgenden Test bildet. Die Aufräumsequenz ist vergleichbar mit
”tear-down” Methoden in Unit-Tests.
Aufnahme von Testsequenzen
Bevor eine Sequenz von Events im SUT aufgenommen werden kann, muss zunächst das SUT aus
qftestJUI heraus gestartet worden sein und die Verbindung zum SUT muss bestehen. Dazu muss
”Java SUT Client starten” Knoten markiert und der „Wiedergabe“ Knopf
gedrückt werden.
Beim Start des SUT aus qftestJUI heraus, werden Java Anwendungen in separaten (JVM)
ausgeführt. Dabei wird zunächst spezieller Code ausgeführt, der eine RMI Verbindung zu
qftestJUI herstellt und eine eigene EventQueue installiert, bevor die Kontrolle an das SUT
weitergegeben wird. Die EventQueue wird benötigt, um die GUI Komponenten des SUT zu
verfolgen und um Events aufzuzeichnen.
Nachdem die Anwendung läuft, wird der Aufnahmeknopf rot dargestellt und aktiviert. Die
Aufnahme der Sequenz wird einfach „mit einem Mausklick“ auf den Aufnahmeknopf
gestartet. Jetzt befindet man sich im Aufnahmemodus und kann einige Kommandos an der SUT
ausführen. Die Aufnahme wird dann mit dem Startknopf beendet. Die aufgezeichneten Events
werden in der Testsuite an gewünschter Stelle bzw. als neue Sequenz unterhalb des
„Extrasequenz“-Knotens eingefügt. Alle Komponenten, auf die sich die aufgezeichneten Events
beziehen, werden automatisch unterhalb des „Fenster und Komponenten“-Knotens in die
Testsuite integriert, falls sie noch nicht vorhanden sind.
Abbildung 21 – erstellte Sequenz
In diesem Sequenzbeispiel ist zu erkennen, dass die Sequenz mit einem Mausklick im LoginTextfeld eingeleitet wird. MPRC steht hierbei für Move-Pressed-Released-Clicked, was eine
zusammengefasste Version der einzelnen Mauseevents darstellt. Die Koordinaten der Klicks
werden relativ zum Nullpunkt der Komponenten „frameAnmeldung.text“ angegeben. Durch den
„Texteingabe“-Knoten wird der Text „mustermann“ in das Textfeld geschrieben. Mit dem
Tabulator-Event im „PTR“-Knoten wird dann in das Passwort-Textfeld gewechselt. Nachdem das
Passwort eingegeben und der Anmelde-Button gedrückt wird, bewirkt der „Warten auf
62