35.1 If - else

If Knoten kennen Sie bereits aus der Vorbereitung Sequenz im Kapitel Gerät starten und verbinden. Sehen wir uns diesen nun etwas genauer an.

Abbildung 35.1:  Setup Sequenz mit If/Elseif Knoten

Über einen If-Knoten können Sie steuern, ob bestimmte Knoten ausgeführt werden oder nicht. In unserem Fall geht es um das Anmelden in der Carconfig-App. Zunächst müssen wir herausfinden, ob wir bereits angemeldet sind. Dies geschieht über den Warten auf Komponente-Knoten, der als Ergebnis entweder true (wahr) oder false (falsch) in die Variable notLoggedIn schreibt.

Abbildung 35.2:  Warten auf Komponente setzt die Variable "notLoggedIn" mit dem Ergebnis

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

Abbildung 35.3:  Der If Knoten wertet die Variable aus

Je nachdem, ob man bereits angemeldet ist, führt QF-Test die im If Knoten enthaltenen Knoten aus oder nicht.

In der Variablendefinition-Tabelle können Sie den Wert der Variablen notLoggedIn prüfen. Beim ausführen des Ersten Testfalls ist der Wert true und damit die Bedingung $(notLoggedIn) wahr, d.h. die Knoten zum Anmelden werden ausgeführt. Beim zweiten Testfalls ist der Wert fals und damit die Bedingung false. Die Knoten im If Knoten werden übersprungen.

Hinweis 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.