If - else
If Knoten kennen Sie bereits aus der Vorbereitung Sequenz im Kapitel Starten der Anwendung. Sehen wir uns diesen nun etwas genauer an.

Über einen If Knoten können Sie steuern, ob bestimmte Knoten ausgeführt
werden oder nicht. In unserem Fall geht es um den Start des SUT. Zunächst
müssen wir herausfinden, ob die Applikation bereits läuft. Dies geschieht über
den Warten auf Client Knoten, der als Ergebnis entweder true
(wahr) oder false
(falsch) in die Variable isSUTRunning
schreibt.

Der If Knoten wertet die Ergebnisvariable isSUTRunning
im 'Bedingung'
Attribut aus. Da auf den Wert der Variablen zugegriffen werden soll,
wird die Syntax $()
verwendet (vgl. Hinweis zu Variablensyntax
in Kapitel Abschnitt 24.1).

Je nachdem, ob die Applikation bereits läuft, führt QF-Test die im If Knoten enthaltenen Knoten aus oder nicht.
- Aktion Beenden Sie das CarConfig Demo, falls es läuft.
- Führen Sie den Vorbereitung Knoten mit Einzelschritten aus.
- Führen Sie den Vorbereitung Knoten nochmals mit Einzelschritten aus während das CarConfig Demo läuft.
In der Variablendefinition-Tabelle können Sie den Wert der Variablen
isSUTRunning
prüfen.
Beim ersten Mal ist der Wert false
und damit die Bedingung
not $(isSUTRunning)
wahr, d.h. die Knoten für den SUT-Start werden ausgeführt.
Beim zweiten Mal ist der Wert true
und damit die Bedingung false
.
Die Knoten im If Knoten werden übersprungen.
Hinweis Im ersten Knoten der Vorbereitung werden If Knoten verwendet, um abhängig vom Betriebssystem den zu verwendenden Win-Browser in einer globalen Variable zu hinterlegen. Der besseren Lesbarkeit halber werden hier nur If Knoten verwendet. Es wäre ebenso möglich mit Elseif und Else Knoten zu arbeiten. In einem Elseif Knoten wird eine weitere Bedingung formuliert, die dann geprüft wird, wenn die Bedingung im If Knoten nicht zutrifft. Die Kindknoten des Else Knoten werden nur dann ausgeführt, wenn weder die Bedingung des If noch die der Elseif Knoten zutreffen.
Bei der Prüfung des Betriebssystems wird direkt auf eine QF-Test Variable
zugegriffen. QF-Test speichert die Betriebssysteminformation in einer Gruppenvariable
ab, wobei die Gruppe qftest
und die Variablen linux
,
macos
oder windows
heißen. Die Syntax für den Zugriff auf Gruppenvariablen ist ${group:varname}
,
z.B. ${qftest:windows}
.