34.7 Prozesse
Um die Kommunikation zwischen dem SUT und QF-Test herzustellen, müssen der oder die Prozesse des SUT aus QF-Test heraus gestartet werden. Details zu den Hintergründen beim Starten einer Applikation und Hinweise darauf, welche Methode wann am geeignetsten ist, finden Sie in "Starten einer Applikation aus QF-Test".
Mit Hilfe der folgenden Knotentypen können Sie Programme starten,
auf die Verbindung mit einem SUT Client warten, auf das Ende
eines Programms warten und dessen Exitcode auswerten, sowie Prozesse
"abschießen", vergleichbar mit einem kill unter Linux.
Die Zahl der Prozesse, die gleichzeitig von QF-Test gestartet werden
können, ist nur durch das zu Grunde liegende System begrenzt. Allerdings
muss jedem aktiven Prozess ein eindeutiger Name zugewiesen werden über
den ihn andere Knoten ansprechen können.
Im Weiteren werden wir von QF-Test gestartete Prozesse als Clients bezeichnen. QF-Test unterscheidet zwischen zwei Arten von Clients: Beliebigen Programmen, die dazu dienen, korrekte Randbedingungen für einen Test sicherzustellen und SUT Clients, den eigentlichen Java Applikationen, deren GUI von QF-Test ferngesteuert wird.
Die Standardein- und -ausgabekanäle eines Clients werden in ein Terminal umgeleitet, das über das »Client« Menü zugänglich ist. Die Ausgabe des Clients wird auch im Protokoll des Testlaufs gespeichert.
34.7.1 Programm starten
|
|
Um während eines Tests ein beliebiges Programm zu starten, können Sie entweder diesen Knoten, oder einen Shell-Kommando ausführen Knoten verwenden. Dieser Knoten ist vorzuziehen, wenn Sie mehrere, möglicherweise komplexe Parameter an das Programm übergeben wollen. |
Enthalten in: Alle Arten von Sequenzen.
Kinder: Keine
Ausführung: Die Kommandozeile für das Programm wird aus den Attributen zusammengesetzt und der Prozess gestartet. Ein- und Ausgabe des Programms werden umgeleitet und von QF-Test übernommen.
Attribute:
- Client
-
Dieser Name identifiziert den Client Prozess und muss eindeutig sein, so lange der Prozess läuft. Andere Knoten identifizieren den Client an Hand dieses Namens.
Variabel: Ja
Einschränkungen: Darf nicht leer sein.
- Ausführbares Programm
-
Das ausführbare Programm, das gestartet werden soll. Wenn sich das Programm nicht im
PATHbefindet, müssen Sie den vollen Pfad angeben.Der "Datei auswählen" Button
öffnet einen Dialog, in dem Sie das
Programm direkt auswählen können. Diesen erreichen Sie auch
mittels Shift+Return oder
Alt+Return, sofern sich der
Fokus im Textfeld befindet.
Variabel: Ja
Einschränkungen: Darf nicht leer sein
- Verzeichnis
-
Hier können Sie das Arbeitsverzeichnis für das Programm festlegen. Wenn Sie nichts angeben, erbt das Programm das Arbeitsverzeichnis von QF-Test.
Der "Verzeichnis auswählen" Button
öffnet einen Dialog, in dem Sie das
Verzeichnis direkt auswählen können. Diesen erreichen Sie auch
mittels Shift+Return oder
Alt+Return, sofern sich der
Fokus im Textfeld befindet.
Hinweis Dieses Verzeichnis ist lediglich das Arbeitsverzeichnis des neu gestarteten Prozesses. Es hat keinen Einfluss auf das Arbeitsverzeichnis von QF-Test. Das hat zur Folge, dass z.B. ein Skript namens
./kopiere_datenrelativ zum Arbeitsverzeichnis von QF-Test gesucht wird und nicht relativ zu diesem Verzeichnis. Erst die Pfadangaben innerhalb des Programms werden relativ zum angegebenen Verzeichnis aufgelöst.Variabel: Ja
Einschränkungen: Muss entweder leer, oder ein existierendes Verzeichnis sein
- Programm-Parameter
-
Hier finden Sie Die Kommandozeilenargumente für das zu startende Programm. Jeder Parameter muss in seiner eigenen Zeile stehen, Leerzeichen innerhalb eines Parameters oder Sonderzeichen müssen nicht speziell behandelt werden.
Standardmäßig werden leere Parameter ignoriert. Falls Sie explizit ein leeres Kommandozeilenargument (entsprechend '') übergeben wollen, können Sie die Option Leere Argument-Zeilen beim Start des Clients ignorieren ausschalten.
Expandiert der Wert in einer Zeile aus einer Variable zu einer Liste oder einem Array, so werden alle Elemente des Objektes als einzelne Parameter verwendet.
Näheres zur Arbeit mit den Tabellen finden Sie in "Tabellen".
Variabel: Ja
Einschränkungen: Keine
- QF-Test ID
-
Die QF-Test ID ist für diesen Knoten zur Zeit ohne Bedeutung.
Variabel: Nein
Einschränkungen: Darf keines der Zeichen '\', '#', '$', '@', '&', oder '%' enthalten und nicht mit einem Unterstrich ('_') beginnen.
- Verzögerung vorher/nachher
-
Mit diesen Parametern kann vor oder nach der Ausführung eine Verzögerung bewirkt werden. Sind sie nicht gesetzt, wird die Standardverzögerung aus den Optionen verwendet.
Variabel: Ja
Einschränkungen: Leer oder > 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
34.7.2 Shell-Kommando ausführen
|
|
Hiermit lässt sich während eines Testlaufs auf einfache Weise ein
Shell-Kommando ausführen. Die Shell zur Ausführung des Kommandos
kann beim Start von QF-Test auf der Kommandozeile mittels
Nach dem Starten der Shell wird sie wie jeder andere von QF-Test gestartete Prozess behandelt, d.h. Sie können sie beenden oder auf ihr Ende warten und den Exitcode auswerten. |
Enthalten in: Alle Arten von Sequenzen.
Kinder: Keine
Ausführung: Eine Shell wird gestartet, um das Kommando auszuführen. Ihre Ein- und Ausgabe werden umgeleitet und von QF-Test übernommen.
Attribute:
- Client
-
Dieser Name identifiziert den Client Prozess und muss eindeutig sein, so lange der Prozess läuft. Andere Knoten identifizieren den Client an Hand dieses Namens.
Variabel: Ja
Einschränkungen: Darf nicht leer sein.
- Shell-Kommando
-
Das Kommando, das die Shell ausführen soll. Geben Sie es genau so wie an einem Shellprompt ein.
Windows Unter Windows kann es zu Problemen beim Quoten von Argumenten mit Leerzeichen kommen. Wenn Sie die standard Windows Shell verwenden, schützen Sie die Argumente ganz normal mit Anführungsstrichen, z.B.
dir "C:\Program Files". Wenn Sie dagegen mit Hilfe des Kommandozeilenarguments-shell <Programm>eine Linux-Shell unter Windows einsetzen, sollten Sie die Argumente mit Hochkommas schützen, alsols 'C:/Program Files'.Variabel: Ja
Einschränkungen: Darf nicht leer sein
- Verzeichnis
-
Hier können Sie das Arbeitsverzeichnis für die Shell festlegen. Wenn Sie nichts angeben, erbt die Shell das Arbeitsverzeichnis von QF-Test.
Der "Verzeichnis auswählen" Button
öffnet einen Dialog, in dem Sie das
Verzeichnis direkt auswählen können. Diesen erreichen Sie auch
mittels Shift+Return oder
Alt+Return, sofern sich der
Fokus im Textfeld befindet.
Variabel: Ja
Einschränkungen: Muss entweder leer, oder ein existierendes Verzeichnis sein
- QF-Test ID
-
Die QF-Test ID ist für diesen Knoten zur Zeit ohne Bedeutung.
Variabel: Nein
Einschränkungen: Darf keines der Zeichen '\', '#', '$', '@', '&', oder '%' enthalten und nicht mit einem Unterstrich ('_') beginnen.
- Verzögerung vorher/nachher
-
Mit diesen Parametern kann vor oder nach der Ausführung eine Verzögerung bewirkt werden. Sind sie nicht gesetzt, wird die Standardverzögerung aus den Optionen verwendet.
Variabel: Ja
Einschränkungen: Leer oder > 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
Android34.7.3 Android-Emulator starten
|
|
Über diesen Knoten kann man einen Android-Emulator starten und sich damit verbinden. Die Zusammenstellung der benötigten Knoten vom Emulator- bis zum App-Start mit den passenden Warten-Knoten gelingt am einfachsten über den Schnellstart Ihrer Anwendung. Detaillierte Informationen zum Testen von Android-Anwendungen finden Sie in "Android-Anwendungen testen". |
Attribute:
- Client
-
Dieser Name identifiziert den Client Prozess und muss eindeutig sein, so lange der Prozess läuft. Andere Knoten identifizieren den Client an Hand dieses Namens.
Variabel: Ja
Einschränkungen: Darf nicht leer sein.
- Name des zu verwendenden Android-Emulators
-
Der Name des zu verwendenden Emulators wie er zum Beispiel im Android Virtual Device Manager in der Spalte 'Name' angezeigt wird (siehe Android Studio Dialog zeigt verfügbare AVDs). Der Emulatorname braucht hier nicht 'fest verdrahtet' werden. Er kann auch in der Variablen
deviceNameabgespeichert und hier über die Variable referenziert werden.Hinweis Sollten Sie einen Emulator verwenden wollen, den Sie erst nach Start von QF-Test erstellt haben, kann es vorkommen, dass dieser noch nicht in der Drop-Down-Liste angezeigt wird. In diesem Fall können Sie den Namen direkt im Textfeld eintragen.
Variabel: Ja
Einschränkungen: Darf nicht leer sein
- Programm-Parameter
-
Die Kommunikation zwischen QF-Test und dem Emulator erfolgt über ein Java-Programm, das zusätzlich um Emulator gestartet wird und im Hintergrund läuft. Parameter für dieses Java-Programm können hier angegeben werden. Jeder Parameter muss in seiner eigenen Zeile stehen, Leerzeichen innerhalb eines Parameters oder Sonderzeichen müssen nicht speziell behandelt werden. Beispiel:
-Xmx1G, um dem Java Programm 1 GB Speicher zu geben.Standardmäßig werden leere Parameter ignoriert. Falls Sie explizit ein leeres Kommandozeilenargument (entsprechend '') übergeben wollen, können Sie die Option Leere Argument-Zeilen beim Start des Clients ignorieren ausschalten.
Expandiert der Wert in einer Zeile aus einer Variable zu einer Liste oder einem Array, so werden alle Elemente des Objektes als einzelne Parameter verwendet.
Näheres zur Arbeit mit den Tabellen finden Sie in "Tabellen".
Variabel: Ja
Einschränkungen: Keine
- Emulator-Argumente
-
Die Kommandozeilenargumente für den zu startenden Emulator, zum Beispiel
-no-snapshot-save. Jeder Parameter muss in seiner eigenen Zeile stehen, Leerzeichen innerhalb eines Parameters oder Sonderzeichen müssen nicht speziell behandelt werden.Standardmäßig werden leere Argumente ignoriert. Falls Sie explizit ein leeres Kommandozeilenargument (entsprechend '') übergeben wollen, können Sie die Option Leere Argument-Zeilen beim Start des Clients ignorieren ausschalten.
Expandiert der Wert in einer Zeile aus einer Variable zu einer Liste oder einem Array, so werden alle Elemente des Objektes als einzelne Parameter verwendet.
Näheres zur Arbeit mit den Tabellen finden Sie in "Tabellen".
Variabel: Ja
Einschränkungen: Keine
- QF-Test ID
-
Die QF-Test ID ist für diesen Knoten zur Zeit ohne Bedeutung.
Variabel: Nein
Einschränkungen: Darf keines der Zeichen '\', '#', '$', '@', '&', oder '%' enthalten und nicht mit einem Unterstrich ('_') beginnen.
- Verzögerung vorher/nachher
-
Mit diesen Parametern kann vor oder nach der Ausführung eine Verzögerung bewirkt werden. Sind sie nicht gesetzt, wird die Standardverzögerung aus den Optionen verwendet.
Variabel: Ja
Einschränkungen: Leer oder > 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
Android34.7.4 Mit Android-Gerät verbinden
|
|
Über diesen Knoten kann man sich mit einem laufenden Android-Emulator oder echtem Android-Gerät verbinden. Die Zusammenstellung der benötigten Knoten von der Verbindung zum laufenden Emulator beziehungsweise echtem Android-Gerät bis zum App-Start mit den passenden Warten-Knoten gelingt am einfachsten über den Schnellstart Ihrer Anwendung. Detaillierte Informationen zum Testen von Android-Anwendungen finden Sie in "Android-Anwendungen testen". |
Attribute:
- Client
-
Dieser Name identifiziert den Client Prozess und muss eindeutig sein, so lange der Prozess läuft. Andere Knoten identifizieren den Client an Hand dieses Namens.
Variabel: Ja
Einschränkungen: Darf nicht leer sein.
- Name des zu verwendenden Android-Gerätes
-
Der Name eines angeschlossenen Android-Gerätes oder des zu verwendenden Emulators. Die verfügbaren Namen werden in der Drop-Down-Liste angezeigt. Alternativ können Sie diese auch über den Menüpunkt »Laufende Android-Geräte« im Menü »Extras« herausfinden.
Der Emulator- beziehungsweise Gerätename braucht hier nicht 'fest verdrahtet' werden. Er kann auch in der Variablen
deviceNameabgespeichert und hier über die Variable referenziert werden.Hinweis Sollten Sie ein echtes Android-Gerät verwenden wollen, das Sie erst nach dem Start von QF-Test angeschlossen haben, kann es vorkommen, dass dieses noch nicht in der Drop-Down-Liste angezeigt wird. In diesem Fall können Sie den Namen direkt im Textfeld eintragen. Gleiches gilt für einen Emulator, den Sie erst nach Start von QF-Test erstellt haben.
Variabel: Ja
Einschränkungen: Darf nicht leer sein
- Programm-Parameter
-
Die Kommunikation zwischen QF-Test und dem Android-Emulator beziehungsweise echtem Gerät erfolgt über ein Java-Programm, das zusätzlich gestartet wird und im Hintergrund läuft. Parameter für dieses Java-Programm können hier angegeben werden. Jeder Parameter muss in seiner eigenen Zeile stehen, Leerzeichen innerhalb eines Parameters oder Sonderzeichen müssen nicht speziell behandelt werden. Beispiel:
-Xmx1G, um dem Java Programm 1 GB Speicher zu geben.Standardmäßig werden leere Parameter ignoriert. Falls Sie explizit ein leeres Kommandozeilenargument (entsprechend '') übergeben wollen, können Sie die Option Leere Argument-Zeilen beim Start des Clients ignorieren ausschalten.
Expandiert der Wert in einer Zeile aus einer Variable zu einer Liste oder einem Array, so werden alle Elemente des Objektes als einzelne Parameter verwendet.
Näheres zur Arbeit mit den Tabellen finden Sie in "Tabellen".
Variabel: Ja
Einschränkungen: Keine
- QF-Test ID
-
Die QF-Test ID ist für diesen Knoten zur Zeit ohne Bedeutung.
Variabel: Nein
Einschränkungen: Darf keines der Zeichen '\', '#', '$', '@', '&', oder '%' enthalten und nicht mit einem Unterstrich ('_') beginnen.
- Verzögerung vorher/nachher
-
Mit diesen Parametern kann vor oder nach der Ausführung eine Verzögerung bewirkt werden. Sind sie nicht gesetzt, wird die Standardverzögerung aus den Optionen verwendet.
Variabel: Ja
Einschränkungen: Leer oder > 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
iOS34.7.5 Mit iOS-Gerät verbinden
|
|
Dieser Knoten verbindet QF-Test mit einem angeschlossenen oder einem simulierten iOS-Gerät. Falls notwendig, wird der Simulator ebenfalls gestartet. In QF-Test Vorbereitung Sequenz für iOS Tests ist beschrieben, wie Sie eine Sequenz erstellen können, die die Voraussetzungen für das Testsystem überprüft, die Verbindung zu einem iOS-Gerät herstellt und eine App startet. Diese Sequenz enthält auch die notwendigen Warteknoten. Detaillierte Informationen zum Testen von iOS-Apps finden Sie in "iOS-Anwendungen testen". |
Attribute:
- Client
-
Dieser Name identifiziert den Client Prozess und muss eindeutig sein, so lange der Prozess läuft. Andere Knoten identifizieren den Client an Hand dieses Namens.
Variabel: Ja
Einschränkungen: Darf nicht leer sein.
- Name des (simulierten) iOS-Gerätes
-
Der Name eines iOS-Geräts, das an den Rechner angeschlossen ist, oder ein simuliertes iOS-Gerät. Von den verfügbaren Geräten wird dasjenige ausgewählt, dessen Name am besten mit dem hier eingetragenen übereinstimmt. Um also einen Lauf auf einem beliebigen (simulieren) iPhone auszuführen, genügt es, hier einfach den Text iPhone einzutragen.
Wenn Sie den Namen hier nicht fest verdrahten wollen, können Sie stattdessen die Variable
deviceNameeintragen.Variabel: Ja
Einschränkungen: Darf nicht leer sein.
- Programm-Parameter
-
QF-Test kommuniziert mit dem iOS-Gerät über eine Java-basierte Controller-Applikation. Hier können Sie die Parameter für dieses Java-Programm angeben. Jeder Parameter muss in seiner eigenen Zeile stehen, Leerzeichen innerhalb eines Parameters oder Sonderzeichen müssen nicht speziell behandelt werden. Beispiel:
-Xmx1Gfür die Zuweisung von 1 GB Speicher für das Java-Programm.Standardmäßig werden leere Parameter ignoriert. Falls Sie explizit ein leeres Kommandozeilenargument (entsprechend '') übergeben wollen, können Sie die Option Leere Argument-Zeilen beim Start des Clients ignorieren ausschalten.
Expandiert der Wert in einer Zeile aus einer Variable zu einer Liste oder einem Array, so werden alle Elemente des Objektes als einzelne Parameter verwendet.
Näheres zur Arbeit mit den Tabellen finden Sie in Abschnitt "Tabellen".
Variabel: Ja
Einschränkungen: Keine
- QF-Test ID
-
Die QF-Test ID ist für diesen Knoten zur Zeit ohne Bedeutung.
Variabel: Nein
Einschränkungen: Darf keines der Zeichen '\', '#', '$', '@', '&', oder '%' enthalten und nicht mit einem Unterstrich ('_') beginnen.
- Verzögerung vorher/nachher
-
Mit diesen Parametern kann vor oder nach der Ausführung eine Verzögerung bewirkt werden. Sind sie nicht gesetzt, wird die Standardverzögerung aus den Optionen verwendet.
Variabel: Ja
Einschränkungen: Leer oder > 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
34.7.6 Warten auf Client
|
|
Bei seiner Ausführung stellt dieser Knoten sicher, dass eine Verbindung zu einem bestimmten Client besteht. Ist dies nicht der Fall, wartet er eine gewisse Zeit und wirft im Fehlerfall eine ClientNotConnectedException. Das Resultat des Knotens kann auch in einer Variable mittels des Attributes Variable für Ergebnis gesetzt werden. Mit Ausschalten des Attributes Im Fehlerfall Exception werfen kann das Werfen der Exceptions unterdrückt werden. |
Enthalten in: Alle Arten von Sequenzen.
Kinder: Keine
Ausführung: QF-Test wartet, bis der Java-Client des SUT mit dem entsprechenden Namen eine RMI Verbindung herstellt oder das Timeout abgelaufen ist.
Attribute:
- Client
-
Der Name des Java-Clients auf dessen Verbindung gewartet wird.
Variabel: Ja
Einschränkungen: Darf nicht leer sein
- Wartezeit
-
Zeit in Millisekunden, die maximal verstreichen darf.
Variabel: Ja
Einschränkungen: >= 0
- GUI-Engine
-
Die GUI-Engine auf die gewartet werden soll. Nur relevant für SUTs mit mehr als einer GUI-Engine wie in "GUI-Engines" beschrieben.
Variabel: Ja
Einschränkungen: Siehe "GUI-Engines"
- Variable für Ergebnis
-
Mit diesem optionalen Attribut können Sie den Namen einer Variable festlegen, die abhängig vom Ergebnis der Aktion auf 'true' (erfolgreich) oder 'false' (fehlgeschlagen) gesetzt wird.
Hinweis Ist dieses Attribut gesetzt, wird das Attribut Fehlerstufe der Meldung ignoriert. Das Attribut Im Fehlerfall Exception werfen behält dagegen seine Funktion, so dass es möglich ist, eine Ergebnisvariable zu erhalten und trotzdem eine Exception zu werfen.
Variabel: Ja
Einschränkungen: Keine
- Lokale Variable
-
Ist dieses Attribut nicht gesetzt, wird die Variable in den globalen Definitionen gebunden. Andernfalls wird – sofern vorhanden – die oberste aktuelle Definition der Variablen überschrieben, sofern diese innerhalb des aktuellen Prozedur, Abhängigkeit oder Testfall Knotens liegt. Gibt es keine solche Definition, wird eine neue Definition im aktuellen Prozedur, Abhängigkeit oder Testfall Knoten angelegt, oder, falls kein solcher existiert, im obersten Knoten auf dem Variablen-Stapel mit Fallback auf die globalen Definitionen. Eine Erläuterung dieser Begriffe und weitere Details zu Variablen finden Sie in "Variablen".
Über die Option Attribut 'Lokale Variable' standardmäßig aktivieren kann der Wert voreingestellt werden.
Variabel: Nein
Einschränkungen: Keine
- Fehlerstufe der Meldung
-
Über dieses Attribut legen Sie die Fehlerstufe der Meldung fest, die in das Protokoll geschrieben wird, wenn die Aktion nicht erfolgreich ist. Zur Auswahl stehen Nachricht, Warnung und Fehler.
Hinweis Dieses Attribut ist ohne Bedeutung, falls eines der Attribute Im Fehlerfall Exception werfen oder Variable für Ergebnis gesetzt ist.
Variabel: Nein
Einschränkungen: Keine
- Im Fehlerfall Exception werfen
-
Ist dieses Attribut gesetzt, wird bei einem Scheitern der Aktion eine Exception geworfen. Für 'Check...'-Knoten wird eine
CheckFailedExceptiongeworfen, für 'Warten auf...'- Knoten eine spezifische Exception für diesen Knoten.Variabel: Nein
Einschränkungen: Keine
- QF-Test ID
-
Die QF-Test ID ist für diesen Knoten zur Zeit ohne Bedeutung.
Variabel: Nein
Einschränkungen: Darf keines der Zeichen '\', '#', '$', '@', '&', oder '%' enthalten und nicht mit einem Unterstrich ('_') beginnen.
- Verzögerung vorher/nachher
-
Mit diesen Parametern kann vor oder nach der Ausführung eine Verzögerung bewirkt werden. Sind sie nicht gesetzt, wird die Standardverzögerung aus den Optionen verwendet.
Variabel: Ja
Einschränkungen: Leer oder > 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
34.7.7 Warten auf Mobil-Gerät
|
|
Bei seiner Ausführung stellt dieser Knoten sicher, dass eine
Verbindung zu einem bestimmten (virtuelle/simulierte) mobilen Gerät besteht. Ist dies nicht
der Fall, wartet er eine gewisse Zeit und wirft nach Ablauf der Zeit
eine |
Enthalten in: Alle Arten von Sequenzen.
Kinder: Keine
Ausführung: QF-Test wartet, bis das (virtuelle/simulierte) mobile Gerät mit dem entsprechenden Namen eine Verbindung herstellt oder das Timeout abgelaufen ist.
Attribute:
- Client
-
Der Name des Android- oder iOS-Clients, auf dessen Verbindung gewartet wird.
Variabel: Ja
Einschränkungen: Darf nicht leer sein
- Wartezeit
-
Zeit in Millisekunden, die maximal verstreichen darf.
Variabel: Ja
Einschränkungen: >= 0
- QF-Test ID
-
Die QF-Test ID ist für diesen Knoten zur Zeit ohne Bedeutung.
Variabel: Nein
Einschränkungen: Darf keines der Zeichen '\', '#', '$', '@', '&', oder '%' enthalten und nicht mit einem Unterstrich ('_') beginnen.
- Verzögerung vorher/nachher
-
Mit diesen Parametern kann vor oder nach der Ausführung eine Verzögerung bewirkt werden. Sind sie nicht gesetzt, wird die Standardverzögerung aus den Optionen verwendet.
Variabel: Ja
Einschränkungen: Leer oder > 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
34.7.8 Mobile-App starten
|
|
Über diesen Knoten kann man eine mobile Applikation installieren und starten. Die Zusammenstellung der benötigten Knoten vom Emulator/Simulator-Start - oder alternativ der Verbindung mit einem laufenden Android-Emulator, einem iOS-Simulator oder einem echtem Gerät - bis zum App-Start mit den passenden Warten-Knoten gelingt am einfachsten über den Schnellstart Ihrer Anwendung. Detaillierte Informationen zum Testen von mobilen Anwendungen finden Sie in "Android-Anwendungen testen". |
Attribute:
- Client
-
Dieser Name identifiziert den Client Prozess und muss eindeutig sein, so lange der Prozess läuft. Andere Knoten identifizieren den Client an Hand dieses Namens.
Variabel: Ja
Einschränkungen: Darf nicht leer sein.
- Pfad zur APK/APP/IPA-Datei
-
Der Pfad zu der zu verwendenden Android- oder iOS-App. Um einen Pfad relativ zur Testsuite anzugeben, nutzen Sie am besten die Variable
${qftest:suite.dir}verwenden, siehe "Spezielle Gruppen". Beispiel:${qftest:suite.dir}/apps/myapp.apk.Falls die App vorinstalliert ist und die .apk/.app/.ipa-Datei nicht verfügbar ist, kann die App alternativ über die Attribute Package / Bundle-ID und Activity (nur für Android) gestartet werden.
Variabel: Ja
Einschränkungen: Darf nicht leer sein
- Neuinstallation der App erzwingen
-
Wenn Sie das Attribut selektieren, wird die App auf jeden Fall neu installiert, egal, ob bereits eine Installation der App auf dem Emulator/Simulator oder dem echten Gerät vorhanden ist.
Hinweis Diese Aktion löscht nicht zwingend vorhandene Einstellungen und Daten der App. Dies ist abhängig davon, wo die Daten und Einstellungen der App gespeichert werden.
Variabel: Nein
Einschränkungen: Keine
- Die App starten
-
Attribut selektieren, um die Applikation zu starten.
Variabel: Nein
Einschränkungen: Keine
- Package / Bundle-ID
-
Der Package-Name der zu startenden Android-App oder die BundleId der zu startenden iOS-App. Wird nur für den Sonderfall benötigt, dass die .apk/.app/.ipa-Datei nicht im Attribut Pfad zur APK/APP/IPA-Datei angegeben werden kann. Zusätzlich muss für Android dann auch das Attribut Activity (nur für Android) gesetzt werden. Das Package kann über die Android Debug Bridge ermittelt werden. Alternativ können zunächst nur den Emulator starten oder sich mit einem echten Gerät oder laufenden Emulator verbinden. Wenn Sie nun die App manuell starten, können Sie eine Komponente aufnehmen. Dann wird das Package in den Attributen des obersten Knotens der Komponentenhierarchie abgespeichert.
Variabel: Ja
Einschränkungen: Keine
- Activity (nur für Android)
-
Der Activity-Name der zu startenden Android-App. Wird nur für den Sonderfall benötigt, dass die .apk-Datei nicht im Attribut Pfad zur APK/APP/IPA-Datei angegeben werden kann. Zusätzlich muss dann auch das Attribut Package / Bundle-ID gesetzt werden. Die Activity kann über die Android Debug Bridge ermittelt werden.
Variabel: Ja
Einschränkungen: Keine
- QF-Test ID
-
Die QF-Test ID ist für diesen Knoten zur Zeit ohne Bedeutung.
Variabel: Nein
Einschränkungen: Darf keines der Zeichen '\', '#', '$', '@', '&', oder '%' enthalten und nicht mit einem Unterstrich ('_') beginnen.
- Verzögerung vorher/nachher
-
Mit diesen Parametern kann vor oder nach der Ausführung eine Verzögerung bewirkt werden. Sind sie nicht gesetzt, wird die Standardverzögerung aus den Optionen verwendet.
Variabel: Ja
Einschränkungen: Leer oder > 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
34.7.9 Programm beenden
|
|
Hiermit kann ein Prozess, der von QF-Test gestartet wurde,
beendet werden. Sollte sich der Prozess bereits selbst beendet
haben, ändert sich nichts. Andernfalls versucht QF-Test im Fall
eines SUT Clients zunächst, die Applikation durch Aufruf der
Java-Methode
WindowsAchtung: Unter Windows werden Kindprozesse nicht
beendet, wenn der Vaterprozess abgeschossen wird. Wie in "Starten einer Applikation aus QF-Test" beschrieben, startet QF-Test das SUT
über einige Umwege. Wenn das SUT sich nicht mit
|
Enthalten in: Alle Arten von Sequenzen.
Kinder: Keine
Ausführung: Schießt den Prozess ab, der unter dem entsprechenden Namen gestartet wurde.
Attribute:
- Client
-
Der Name unter dem der Prozess, der abgeschossen werden soll, gestartet wurde.
Variabel: Ja
Einschränkungen: Darf nicht leer sein
- QF-Test ID
-
Die QF-Test ID ist für diesen Knoten zur Zeit ohne Bedeutung.
Variabel: Nein
Einschränkungen: Darf keines der Zeichen '\', '#', '$', '@', '&', oder '%' enthalten und nicht mit einem Unterstrich ('_') beginnen.
- Verzögerung vorher/nachher
-
Mit diesen Parametern kann vor oder nach der Ausführung eine Verzögerung bewirkt werden. Sind sie nicht gesetzt, wird die Standardverzögerung aus den Optionen verwendet.
Variabel: Ja
Einschränkungen: Leer oder > 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
34.7.10 Warten auf Programmende
|
|
Hiermit kann auf das Ende eines Prozesses, der von QF-Test
gestartet wurde, gewartet werden. Terminiert der Prozess nicht
innerhalb des vorgegebenen Timeouts, wird eine
|
Enthalten in: Alle Arten von Sequenzen.
Kinder: Keine
Ausführung: Wartet auf das Ende des Prozesses, der unter dem entsprechenden Namen gestartet wurde und prüft dessen Exitcode.
Attribute:
- Client
-
Der Name unter dem der Prozess, auf dessen Ende gewartet werden soll, gestartet wurde.
Variabel: Ja
Einschränkungen: Darf nicht leer sein
- Wartezeit
-
Zeit in Millisekunden, die maximal verstreichen darf.
Variabel: Ja
Einschränkungen: >= 0
- Erwarteter Exitcode
-
Ist dieses Attribut gesetzt, wird nach dem Ende des Prozesses dessen Exitcode ausgewertet und mit diesem Wert verglichen. Die Art des Vergleichs wird durch einen der vier Operatoren ==, !=, < und > festgelegt, die dem Wert vorangestellt werden können. Ohne Operator wird auf Gleichheit geprüft. Scheitert die Prüfung, wird eine
TestExceptionausgelöst.Beispiele: Wird als Attributwert 0 angegeben, so führt jeder andere Exitcode als 0 zu einem Fehler. Dies entspricht der Angabe ==0. Bei einem Wert von >0 löst entsprechend jeder Exitcode kleiner oder gleich 0 eine Exception aus.
Variabel: Ja
Einschränkungen: Siehe oben
- Variable für Ergebnis
-
Mit diesem optionalen Attribut können Sie den Namen einer Variable festlegen, die abhängig vom Ergebnis der Aktion auf 'true' (erfolgreich) oder 'false' (fehlgeschlagen) gesetzt wird.
Hinweis Ist dieses Attribut gesetzt, wird das Attribut Fehlerstufe der Meldung ignoriert. Das Attribut Im Fehlerfall Exception werfen behält dagegen seine Funktion, so dass es möglich ist, eine Ergebnisvariable zu erhalten und trotzdem eine Exception zu werfen.
Variabel: Ja
Einschränkungen: Keine
- Lokale Variable
-
Ist dieses Attribut nicht gesetzt, wird die Variable in den globalen Definitionen gebunden. Andernfalls wird – sofern vorhanden – die oberste aktuelle Definition der Variablen überschrieben, sofern diese innerhalb des aktuellen Prozedur, Abhängigkeit oder Testfall Knotens liegt. Gibt es keine solche Definition, wird eine neue Definition im aktuellen Prozedur, Abhängigkeit oder Testfall Knoten angelegt, oder, falls kein solcher existiert, im obersten Knoten auf dem Variablen-Stapel mit Fallback auf die globalen Definitionen. Eine Erläuterung dieser Begriffe und weitere Details zu Variablen finden Sie in "Variablen".
Über die Option Attribut 'Lokale Variable' standardmäßig aktivieren kann der Wert voreingestellt werden.
Variabel: Nein
Einschränkungen: Keine
- Fehlerstufe der Meldung
-
Über dieses Attribut legen Sie die Fehlerstufe der Meldung fest, die in das Protokoll geschrieben wird, wenn die Aktion nicht erfolgreich ist. Zur Auswahl stehen Nachricht, Warnung und Fehler.
Hinweis Dieses Attribut ist ohne Bedeutung, falls eines der Attribute Im Fehlerfall Exception werfen oder Variable für Ergebnis gesetzt ist.
Variabel: Nein
Einschränkungen: Keine
- Im Fehlerfall Exception werfen
-
Ist dieses Attribut gesetzt, wird bei einem Scheitern der Aktion eine Exception geworfen. Für 'Check...'-Knoten wird eine
CheckFailedExceptiongeworfen, für 'Warten auf...'- Knoten eine spezifische Exception für diesen Knoten.Variabel: Nein
Einschränkungen: Keine
- QF-Test ID
-
Die QF-Test ID ist für diesen Knoten zur Zeit ohne Bedeutung.
Variabel: Nein
Einschränkungen: Darf keines der Zeichen '\', '#', '$', '@', '&', oder '%' enthalten und nicht mit einem Unterstrich ('_') beginnen.
- Verzögerung vorher/nachher
-
Mit diesen Parametern kann vor oder nach der Ausführung eine Verzögerung bewirkt werden. Sind sie nicht gesetzt, wird die Standardverzögerung aus den Optionen verwendet.
Variabel: Ja
Einschränkungen: Leer oder > 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