7.2
Ausgewählte Packages und Prozeduren

Wir werfen nun einen genaueren Blick auf ein paar ausgewählte Packages und Prozeduren der Standardbibliothek.

Wir werden mit Packages beginnen, die den Zugriff auf Komponenten abhängig von der verwendeten GUI Technologie ermöglichen, also JavaFX, Swing, Eclipse/SWT und Web Komponenten.

7.2.1
Das Checkbox Package

Wir beginnen nun mit der genaueren Betrachtung der Packages qfs.fx.checkbox qfs.swing.checkbox, qfs.swt.checkbox oder qfs.web.checkbox.

Hier sind einige Prozeduren aus diesen Packages:

Für jede dieser Prozeduren wird die QF-Test ID der Kontrollkästchenkomponente als variables Argument übergeben. Die Bibliothek kümmert sich um die Überprüfung, dass der Zustand des Kontrollkästchens wie erwartet gesetzt wurde.

Die anderen Prozeduren in diesem Package folgen demselben Muster.

7.2.2
Das Combobox bzw. Combo Package

Die Packages qfs.fx.combobox, qfs.swing.combobox, qfs.swt.combo und qfs.web.select enthalten Prozeduren, um Werte in einer Combobox zu selektieren.

Die wichtigsten Prozeduren sind:

7.2.3
Das General Package

Die Packages qfs.fx.general, qfs.swing.general, qfs.swt.general und qfs.web.general enthalten allgemeine Prozeduren für GUI-Elemente.

Die wichtigsten Prozeduren sind:

7.2.4
Das List Package

Die Packages qfs.fx.list, qfs.swing.list, qfs.swt.list und qfs.web.list enthalten allgemeine Prozeduren für Listen.

Die wichtigsten Prozeduren sind:

7.2.5
Das Menu Package

Die Packages qfs.fx.menu, qfs.swing.menu und qfs.swt.menu erlauben es Ihnen, in einfacher Weise Einträge und auch Kontrollkästchen in Menüs oder Untermenüs auszuwählen bzw. zu setzen. Die wichtigsten Prozeduren sind:

An alle diese Prozeduren muss die QF-Test ID der Menükomponente wie auch des Eintrags bzw. Kontrollkästchens übergeben werden. Die Benutzung variiert leicht, abhängig von der jeweiligen Art der Prozedur.

7.2.6
Das Table Package

Die Packages qfs.fx.table, qfs.swing.table, qfs.swt.table und qfs.web.table enthalten Hilfsprozeduren für Tabellen.

7.2.7
Das Tree Package

Die Bibliothek stellt in den Packages qfs.fx.tree, qfs.swing.tree, qfs.swt.tree und qfs.web.tree einige einfache Prozeduren zur Manipulation von Bäumen zur Verfügung. Das sind:

Jede der Prozeduren benötigt die QF-Test ID des Baumknotens als Argument.

7.2.8
Das Cleanup Package

Die Packages qfs.fx.cleanup, qfs.swing.cleanup und qfs.swt.cleanup bieten eine gute Unterstützung für das Aufräumen der SUT Umgebung, wenn unerwartet eine Exception auftritt. Stellen Sie sich zum Beispiel vor, dass eine Exception geworfen wird, während auf ein Menü des SUTs zugegriffen wird. Die Exception bewirkt, dass der Ausführungspfad innerhalb Ihrer Testsuite zu einem Exception Handler umgeleitet wird - oder zu einem "impliziten" Exception Handler. Das bedeutet, dass der normale Ausführungspfad, der das geöffnete Menü in der Regel wieder ordnungsgemäß geschlossen hätte, unterbrochen wurde. Ohne eine entsprechende Aktion kann dieses Menü geöffnet bleiben und somit andere Ereignisse an das SUT blockieren.

Hier sehen Sie die wichtigsten Prozeduren innerhalb des Packages:

Das Konzept zur Behandlung von impliziten Exceptions ist von großer Bedeutung, denn eine Exception in einem einzigen Testfall soll nicht zum Beenden des gesamten Testlaufs führen. Lediglich der aktuelle Testfall soll abgebrochen werden, dann sollte es mit dem nächsten Testfall weitergehen.

Aus diesem Grund wird eine Exception innerhalb eines Testfalls auf dieser Ebene gefangen und nicht nach oben propagiert. Dies verhindert den Abbruch des gesamten Testlaufs. Der Fehlerstatus wird jedoch stets korrekt im Protokoll und Report festgehalten.

Benutzt der Testfall eine Abhängigkeit, wird die Exception an den Catch Knoten derselben übergeben, falls ein solcher vorhanden ist. Diese Art der Behandlung von Exceptions (und Fehlern) wird im Kapitel Abhängigkeiten des Handbuchs erklärt.

7.2.9
Das Run-log Package

Das Package qfs.run-log enthält Prozeduren, um Meldungen in das Protokoll zu schreiben.

Hier sehen Sie die Liste von verfügbaren Prozeduren innerhalb des Packages:

7.2.10
Das Run-log.Screenshots Package

Das qfs.run-log.screenshots Package enthält Prozeduren, die Bildschirmabbilder ins Protokoll schreiben und einige Hilfsprozeduren.

Hier sehen Sie die Liste von verfügbaren Prozeduren innerhalb des Packages:

7.2.11
Das Shellutils Package

Das qfs.shellutils Package beinhaltet Prozeduren für die wichtigsten Shell-Kommandos.

Hier sehen Sie die Liste von verfügbaren Prozeduren innerhalb des Packages:

7.2.12
Das Utils Package

Das Package qfs.utils enthält nützliche Prozeduren für häufig auftretende Anforderungen der Testentwicklung.

Hier sehen Sie einige Prozeduren des Packages:

7.2.13
Das Database Package

Das Package qfs.database enthält nützliche Prozeduren, um mit Datenbanken zu interagieren.

Bitte beachten Sie, dass die jar-Datei mit dem Datenbanktreiber vor dem Start von QF-Test ins qftest Pluginverzeichnis kopiert werden muss.

Für weitere Informationen über den Aufbau einer Datenbankverbindung kontaktieren Sie bitte einen Entwickler oder werfen Sie einen Blick auf www.connectionstrings.com.

Die wichtigsten Prozeduren sind:

7.2.14
Das Check Package

Das qfs.check Package enthält Prozeduren, die Checks ausführen.

Die wichtigsten Prozeduren sind:

7.2.15
Das Databinder Package

Das Package qfs.databinder enthält Prozeduren zur Ausführung innerhalb eines Datentreiber Knotens, um Daten für datengetriebenes Testen zu binden.

Die wichtigsten Prozeduren sind: