Die Testsuite und ihre Struktur
Eine Testsuite kann aus mehr als 60 verschieden Arten von Knoten bestehen, die in diesem Kapitel einzeln aufgeführt werden. Jeder Knoten hat bestimmte Eigenschaften, darunter seine Attribute, die QF-Test in der Detailansicht des Editors darstellt. Für jedes Attribut wird angegeben, ob bei der Ausführung eine Variablenexpansion durchgeführt wird (vgl. Kapitel 6) und welchen Einschränkungen der Wert des Attributs unterworfen ist.
Weitere Eigenschaften von Knoten sind mögliche Einschränkungen bzgl. zulässiger Parent- und Childknoten, sowie das Verhalten des Knotens bei der Ausführung.
Testsuite
|
Der Wurzelknoten des Baums repräsentiert die Testsuite selbst. Seine grundlegende Struktur ist fest definiert. Der Wurzelknoten enthält eine beliebige Anzahl von Testfallsätze oder Testfälle, gefolgt von den Prozeduren, den Extrasequenzen und dem Fenster und Komponenten Knoten. Bei seiner Ausführung werden die Testfallsätze der obersten Ebene der Reihe nach ausgeführt. |
Enthalten in: Keiner
Kinder: Eine beliebige Anzahl von Testfallsätze oder Testfallsätze, gefolgt von den Prozeduren, den Extrasequenzen und dem Fenster und Komponenten Knoten.
Ausführung: Die Testfallsatz Knoten der obersten Ebene werden der Reihe nach ausgeführt.
Attribute:

- Name
-
Eine Art Kurzkommentar für die Testsuite. Der Name wird in der Baumdarstellung der Testsuite angegeben und sollte etwas über die Funktion der Testsuite aussagen.
Variabel: Nein
Einschränkungen: Keine
- Inkludierte Dateien
-
Dies ist eine Liste von Testsuiten, auf die sich diese Testsuite bezieht. Kann eine Referenz auf eine Komponente oder eine Prozedur nicht in der aktuellen Suite aufgelöst werden, werden die hier angegebenen Testsuiten der Reihe nach abgesucht. Beim Aufnehmen von neuen Komponenten sucht QF-Test zunächst die Inkludierte Dateien nach einem entsprechenden Komponente Knoten ab, bevor es einen neuen anlegt.
Dateinamen können absolut oder relativ angegeben werden, wobei relative Dateinamen relativ zu dieser Testsuite oder zu Verzeichnissen des Bibliothekspfades aufgelöst werden (vgl. Option Verzeichnisse mit Testsuite-Bibliotheken).
Wenn Sie an diesem Attribut Änderungen vornehmen bietet QF-Test anschließend an, alle betroffenen Knoten an die geänderten Includes anzupassen, so dass exakt die selben Knoten referenziert werden wie vorher. Dies ist z.B. dann sinnvoll, wenn Sie eine Suite zu den Includes hinzufügen oder daraus entfernen und die zugehörigen Referenzen auf Prozeduren und Komponenten implizit bzw. explizit machen wollen, ohne die Funktionalität zu verändern. Wenn Sie allerdings eine Suite umbenannt oder in ein anderes Verzeichnis verschoben haben und nun die Includes an die neuen Gegebenheiten anpassen, wählen Sie "Nein", so dass die vormals impliziten Referenzen auf die alte Suite nun auf die neue Suite verweisen.
Variabel:
9.0+ Dateinamen für inkludierte Testsuiten können Umgebungsvariablen oder System-Properties referenzieren. Die Syntax dafür lautet
${env:...}
beziehungsweise${system:...}
.Sie können die inkludierte Testsuite während der Laufzeit ändern, indem Sie den in der Umgebungsvariablen oder System-Property hinterlegten Wert per Skript auf den neuen Wert setzen. Verwenden Sie hierzu
rc.setProperty
, das in Abschnitt 50.5 beschrieben ist.Hinweis Die obige Syntax entspricht zwar dem QF-Test Standard für Gruppen-Variablen oder Properties. Dies ist aber ein Sonderfall bei dem nur die Gruppen
env
bzw.system
verwendet werden können.Einschränkungen: Keine
- Abhängige Dateien (umgekehrte Includes)
-
Diese Liste von Testsuiten ist das Gegenstück zu den Inkludierte Dateien. Sie hat keinen Einfluss auf die Ausführung von Tests, sondern dient QF-Test als Hinweis darauf, welche Testsuiten von Komponenten in dieser Testsuite abhängig sind, weil sie diese Suite über Inkludierte Dateien einbinden oder durch explizite Referenzen. Diese Information wird herangezogen, wenn QF-Test IDs von Komponenten geändert werden (z.B. durch die Funktion "Komponenten aktualisieren", siehe Abschnitt 5.11.2). Die QF-Test ID der Komponente Attribute von abhängigen Knoten müssen in diesem Fall angepasst werden. Alle aktuell geladenen Testsuiten werden automatisch auf Abhängigkeiten geprüft. Zusätzlich lädt QF-Test die hier aufgeführten Testsuiten automatisch nach und überprüft sie ebenfalls.
Dateinamen können absolut oder relativ angegeben werden, wobei relative Dateinamen relativ zu dieser Testsuite oder zu Verzeichnissen des Bibliothekspfades aufgelöst werden (vgl. Option Verzeichnisse mit Testsuite-Bibliotheken).
Hinweis Wie bei den Inkludierte Dateien werden die Abhängigen Dateien auch indirekt aufgelöst. Hat z.B. Suite A die abhängige Suite B und diese wiederum die abhängige Suite C, so wird bei Änderungen an A sowohl B als auch C nachgeladen und überprüft.
Variabel: 9.0+ Umgebungsvariablen und System-Properties können analog zum Attribut Inkludierte Dateien mit der Syntax
${env:...}
beziehungsweise${system:...}
verwendet werden.Einschränkungen: Keine
- Variablendefinitionen
-
Diese Variablendefinitionen sind mit den Suite Variablen in den Variablen Einstellungen der global Optionen identisch. Näheres zur Arbeit mit der Tabelle finden Sie in Abschnitt 2.2.5. Eine detaillierte Erklärung zur Definition und Verwendung von Variablen finden Sie in Kapitel 6.
Variabel: Namen der Variablen nein, Werte ja
Einschränkungen: Keine
- Maximale Ausführungszeit
-
Zeit in Millisekunden, die der Knoten maximal ausgeführt werden soll. Nach Ablauf dieser Zeit wird der Knoten abgebrochen.
Variabel: Ja
Einschränkungen: >= 0
- Bemerkung
-
Hier können Sie einen beliebigen Kommentar eintragen.
Hinweis Für die ausführliche Dokumentation, insbesondere von Testfallsatz, Testfall oder Prozedur Knoten, ist dieses Textfeld womöglich nicht der geeignete Ort. Es gibt hervorragende Editoren, die wesentlich besser dafür geeignet sind. Mittels der Option Kommando für externen Editor kann ein externer Editor festgelegt werden, in dem nach Drücken von Alt+Eingabe oder Klicken des
Buttons der Kommentar komfortabel bearbeitet werden kann.
Für einige Knoten können Sie ein spezielles Verhalten per Doctags konfigurieren, siehe Doctags.
Falls bei Komponenten Knoten in dem Bemerkungsfeld eine Eintragung gemacht wurde, wird der Knoten bei der Suche bzw. dem Löschen von ungenutzten Komponenten übersprungen.
Variabel: Ja
Einschränkungen: Keine