Handbuch
![]() | ![]() | ![]() | ![]() | ![]() | ![]() | ![]() | ![]() |
Version 6.0.5 |
Dieser Abschnitt führt die restlichen Knotentypen auf, die in keine der bisher behandelten Kategorien fallen.
| Dieser Knoten ist zu Dokumentationszwecken gedacht. Sie können ihn dafür benutzen, Kommentare zu Ihrer Testsuite hinzuzufügen. |
Enthalten in: Überall
Kinder: Keine
Ausführung: Ein Kommentarknoten beeinflusst nicht die Testausführung.
Attribute:
![]() | |||
Abbildung 39.70: Attribute des 'Kommentar' Knotens |
Der Text, der im Baum angezeigt wird - eine Zusammenfassung des Kommentares oder der Kommentar selbst.
In diesem Attribut ist es möglich die folgenden HTML-Tags <i>kursiver Text</i>, <u>unterstrichener text</u>, <s>durchgestrichener text</s> und <b>fetter text</b> zu benutzen um die Repräsentation im Baum aufzuhübschen. Desweiteren sind farbliche Unterlegungen mittels style="color:farbname" und color="farbname" möglich, auch im Zusammenhang mit dem <span>, <em>, <font> und <strong> Tag möglich.
Variabel: Ja
Einschränkungen: Darf nicht leer sein.
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
|
Mit diesem Knoten können Sie zur Laufzeit eines Tests den Wert
einer globalen Variable setzen. Wenn der Test interaktiv aus
QF-Test gestartet wurde und nicht mittels |
Enthalten in: Alle Arten von Sequenzen.
Kinder: Keine
Ausführung: Wenn der Test interaktiv abläuft und das 'Interaktiv' Attribut gesetzt ist, wird ein Dialog geöffnet, in dem der Wert für die Variable eingegeben werden kann. Verstreicht die 'Wartezeit' oder wird der Wert mit dem OK Button bestätigt, wird die Variable entsprechend in den globalen Variablen gesetzt. Bricht der Anwender den Dialog mit dem Abbrechen Button ab, wird der Test beendet. Im nicht-interaktiven Fall wird die Variable direkt auf den 'Defaultwert' gesetzt.
Attribute:
![]() | |||
Abbildung 39.71: 'Variable setzen' Attribute |
Der Name der globalen Variable, der der Wert zugewiesen wird (vgl. Kapitel 6).
Variabel: Ja
Einschränkungen: Darf nicht leer sein.
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 Kapitel 6.
Variabel: Nein
Einschränkungen: Keine
Der Standardwert für die Variable, falls der Test nicht interaktiv abläuft, das 'Interaktiv' Attribut nicht gesetzt ist oder die 'Wartezeit' verstreicht.
Variabel: Ja
Einschränkungen: Keine
Legt fest, ob der Wert über einen Dialog vom Anwender bestimmt werden kann, sofern der Test selbst interaktiv abläuft.
Variabel: Ja
Einschränkungen: Keine
Eine kurze Beschreibung, die im Dialog angezeigt wird. Ist
dieser Wert leer, wird als Beschreibung Wert für
<'Variablenname'>
verwendet.
Variabel: Ja
Einschränkungen: Keine
Ein optionales Zeitlimit für die Eingabe. Wird der Dialog angezeigt und verstreicht die angegebene Zeitspanne, ohne dass der Wert verändert wurde, wird der Dialog automatisch geschlossen und der 'Defaultwert' übernommen. Damit kann das blockieren eines Tests verhindert werden, der zwar interaktiv gestartet wurde aber unbeaufsichtigt ablaufen soll.
Variabel: Ja
Einschränkungen: Leer oder > 0.
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.
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
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
| Dieser Knoten ist sehr wichtig für das Timing eines Testlaufs. Je nach Auslastung des Testsystems kann es unterschiedlich lange dauern, bis z.B. ein neu geöffnetes Fenster tatsächlich erscheint. Mit diesem Knoten läßt sich der Test so lange anhalten, bis eine gewünschte Komponente oder ein Unterelement verfügbar ist. Das Resultat des Knotens kann auch in einer Variable mittels des Attributs 'Variable für Ergebnis' gesetzt werden. Mit Ausschalten des Attributs 'Im Fehlerfall Exception werfen' kann das Werfen der Exceptions unterdrückt werden. In den globalen Optionen läßt sich eine Zeitspanne einstellen, die grundsätzlich verstreichen darf, bis eine beliebige Komponente verfügbar ist, sowie ein zusätzliches Timeout zum Warten auf ein Unterelement. Da diese Timeouts für alle Events gelten, sollten sie nicht größer als ca. zwei bis fünf Sekunden gewählt werden. Dieser Knoten erlaubt es, diese Timeouts in einzelnen Fällen zu vergrößern, ohne damit den gesamten Testlauf unnötig zu verlangsamen. Durch Setzen des 'Warten auf Verschwinden' Attributs kann dieser Knoten auch dazu verwendet werden, auf das Verschwinden einer Komponente zu warten. |
Enthalten in: Alle Arten von Sequenzen.
Kinder: Keine
Ausführung:
Die Daten der Zielkomponente werden an das SUT geschickt. Die
TestEventQueue
ermittelt daraus im SUT die passende
Komponente und wartet gegebenenfalls auf deren Erscheinen, oder
das Verstreichen des Timeouts.
Attribute:
![]() | |||
Abbildung 39.72: 'Warten auf Komponente' Attribute |
Der Name unter dem der Java Prozess des SUT gestartet wurde, aus dem die Daten gelesen werden sollen.
Variabel: Ja
Einschränkungen: Darf nicht leer sein.
Die QF-Test ID des 'Fenster', 'Komponente' oder 'Element' Knotens dessen Daten abgefragt werden.
Der "Komponente auswählen" Button
öffnet einen Dialog, in dem Sie die Komponente (siehe Kapitel 5) direkt auswählen
können. Diesen erreichen Sie auch mittels [Shift-Return] oder [Alt-Return], sofern sich der Fokus im Textfeld befindet. Alternativ
können Sie den gewünschten Knoten mittels [Strg-C] bzw.
»Bearbeiten«-»Kopieren«
kopieren und seine QF-Test ID durch drücken von
[Strg-V] in das Textfeld
einfügen.
Dieses Attribut unterstützt ein spezielles Format, das es erlaubt, Komponenten in anderen Testsuiten zu referenzieren (siehe Abschnitt 23.1). Des weiteren können Unterelemente von Knoten direkt angegeben werden, ohne dass ein eigener Knoten dafür vorhanden sein muss (siehe Abschnitt 5.9). Bei der Verwendung von SmartIDs können Sie ein GUI-Element direkt über seine Wiedererkennungsmerkmale adressieren. Weitere Informationen hierzu finden Sie in SmartID (Preview) und 'Komponente' Knoten versus SmartID.
Variabel: Ja
Einschränkungen: Darf nicht leer sein
Zeit in Millisekunden, die maximal verstreichen darf.
Variabel: Ja
Einschränkungen: >= 0
Ist dieses Attribut gesetzt, wird darauf gewartet, dass eine Komponente oder ein Unterelement
verschwindet, also nicht sichtbar ist. Dies ist z.B. hilfreich um zu prüfen, dass ein Dialog geschlossen
oder gar nicht erst geöffnet wurde. Bleibt die Komponente bzw. das Unterelement die ganze Zeit über
sichtbar, wird eine ComponentFoundException
geworfen.
Variabel: Ja
Einschränkungen: Keine
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
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 Kapitel 6.
Variabel: Nein
Einschränkungen: Keine
Ü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
Ist dieses Attribut gesetzt, wird bei einem Scheitern der Aktion eine Exception geworfen.
Für 'Check...' Knoten wird eine CheckFailedException
geworfen, für 'Warten auf...'
Knoten eine spezifische Exception für diesen Knoten.
Variabel: Nein
Einschränkungen: Keine
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.
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
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
| Web Dieser Knoten ist eine besondere Variante des 'Warten auf Komponente' Knotens speziell für Webseiten. Er wartet nicht nur auf das Vorhandensein eines Dokuments, sondern, falls das Dokument beim Abspielen des letzten Events bereits geladen und bekannt war, darauf, dass dieses neu geladen wird. Da beim Nachladen von Webseiten oder Frames oft das selbe Dokument neu geladen wird, könnte QF-Test ohne diese Funktionalität nicht entscheiden, ob zu einem gegebenen Zeitpunkt noch das alte Dokument vorhanden ist oder schon ein neues geladen wurde. Im ersten Fall würde daraufhin ggf. ein Event im alten Dokument wiedergegeben, der keine Wirkung mehr erzielt, weil inzwischen das Laden der neuen Seite beginnt.
Über das Attribut 'Name des Browser-Fensters' kann die Suche auf ein vorhandenes Browser-Fenster
beschränkt, oder einem neuen Browser-Fenster ein Name zugewiesen werden. Ist
'Ladevorgang nach Ablauf der Wartezeit abbrechen' gesetzt, bricht QF-Test nach Ablauf der Wartezeit das Laden des
Dokuments ab. Das Resultat des Knotens kann auch in einer Variable mittels des
Attributs 'Variable für Ergebnis' gesetzt werden. Mit Ausschalten des Attributs 'Im Fehlerfall Exception werfen'
kann das Werfen einer |
Enthalten in: Alle Arten von Sequenzen.
Kinder: Keine
Ausführung:
Die Daten des Zieldokuments werden an das SUT geschickt. Die TestEventQueue
ermittelt daraus im SUT das passende Dokument und wartet darauf, dass es komplett
geladen wird, oder das Timeout verstreicht, woraufhin eine
DocumentNotLoadedException
geworfen wird.
Attribute:
![]() | |||
Abbildung 39.73: 'Warten auf Laden des Dokuments' Attribute |
Der Name unter dem der Java Prozess des SUT gestartet wurde, aus dem die Daten gelesen werden sollen.
Variabel: Ja
Einschränkungen: Darf nicht leer sein.
Die QF-Test ID des 'Fenster', 'Komponente' oder 'Element' Knotens dessen Daten abgefragt werden.
Der "Komponente auswählen" Button
öffnet einen Dialog, in dem Sie die Komponente (siehe Kapitel 5) direkt auswählen
können. Diesen erreichen Sie auch mittels [Shift-Return] oder [Alt-Return], sofern sich der Fokus im Textfeld befindet. Alternativ
können Sie den gewünschten Knoten mittels [Strg-C] bzw.
»Bearbeiten«-»Kopieren«
kopieren und seine QF-Test ID durch drücken von
[Strg-V] in das Textfeld
einfügen.
Dieses Attribut unterstützt ein spezielles Format, das es erlaubt, Komponenten in anderen Testsuiten zu referenzieren (siehe Abschnitt 23.1). Des weiteren können Unterelemente von Knoten direkt angegeben werden, ohne dass ein eigener Knoten dafür vorhanden sein muss (siehe Abschnitt 5.9). Bei der Verwendung von SmartIDs können Sie ein GUI-Element direkt über seine Wiedererkennungsmerkmale adressieren. Weitere Informationen hierzu finden Sie in SmartID (Preview) und 'Komponente' Knoten versus SmartID.
Variabel: Ja
Einschränkungen: Darf nicht leer sein
Dieses Attribut hat eine doppelte Funktion. Wird es auf den Namen eines existierenden Browser-Fensters gesetzt, wartet QF-Test auf das Laden des Dokuments nur in diesem Fenster. Ist der Name gesetzt und existiert kein zugehöriges Browser-Fenster, wird die Suche auf Dokumente in neuen oder noch nicht benannten Browser-Fenstern beschränkt. Wird dabei ein passendes Dokument gefunden, wird der Name dem zugehörigen Browser-Fenster zugewiesen. Dies ist die einzige Möglichkeit einem Popup-Fenster einen Namen zu geben. Für explizit gestartete Browser kann dieser mittels des Attributs 'Name des Browser-Fensters' im 'Browser-Fenster öffnen' Knoten definiert werden. Der Umgang mit mehreren Fenstern wird in FAQ 25 genauer erläutert.
Variabel: Ja
Einschränkungen: Keine
Zeit in Millisekunden, die maximal verstreichen darf.
Variabel: Ja
Einschränkungen: >= 0
Ist dieses Attribut gesetzt, wird nach erfolglosem Verstreichen der Wartezeit der Ladevorgang abgebrochen und zwar abhängig vom Attribut 'Name des Browser-Fensters' in allen Browsern oder nur dem angegebenen. Ein solcher Abbruch hat keinen Einfluss auf das Ergebnis, nach Ablauf der Wartezeit gilt die Operation in jedem Fall als gescheitert.
Variabel: Ja
Einschränkungen: Keine
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
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 Kapitel 6.
Variabel: Nein
Einschränkungen: Keine
Ü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
Ist dieses Attribut gesetzt, wird bei einem Scheitern der Aktion eine Exception geworfen.
Für 'Check...' Knoten wird eine CheckFailedException
geworfen, für 'Warten auf...'
Knoten eine spezifische Exception für diesen Knoten.
Variabel: Nein
Einschränkungen: Keine
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.
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
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
Enthalten in: Alle Arten von Sequenzen.
Kinder: Keine
Ausführung: Die Zieldatei für den Download wird zum SUT geschickt, wo QF-Test auf das Ende des Downloads wartet. Verstreicht die Wartezeit erfolglos, wird eine DownloadNotCompleteException geworfen.
Attribute:
![]() | |||
Abbildung 39.74: 'Warten auf Ende des Downloads' Attribute |
Der Name unter dem der Java Prozess des SUT gestartet wurde, aus dem die Daten gelesen werden sollen.
Variabel: Ja
Einschränkungen: Darf nicht leer sein.
Die Zieldatei für den Download.
Variabel: Ja
Einschränkungen: Gültiger Dateiname
Zeit in Millisekunden, die maximal verstreichen darf.
Variabel: Ja
Einschränkungen: >= 0
Ist dieses Attribut gesetzt, wird der Download nach erfolglosem Verstreichen der Wartezeit abgebrochen.
Variabel: Ja
Einschränkungen: Keine
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
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 Kapitel 6.
Variabel: Nein
Einschränkungen: Keine
Ü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
Ist dieses Attribut gesetzt, wird bei einem Scheitern der Aktion eine Exception geworfen.
Für 'Check...' Knoten wird eine CheckFailedException
geworfen, für 'Warten auf...'
Knoten eine spezifische Exception für diesen Knoten.
Variabel: Nein
Einschränkungen: Keine
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.
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
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
|
Hiermit laden Sie Daten aus einem |
Enthalten in: Alle Arten von Sequenzen.
Kinder: Keine
Ausführung:
Das ResourceBundle
wird geladen und unter dem
Gruppennamen
für spätere Zugriffe gebunden.
Attribute:
![]() | |||
Abbildung 39.75: 'Ressourcen laden' Attribute |
Der Gruppenname unter dem das ResourceBundle
abgelegt wird. Der Wert einer Definition der Form
Name=Wert
aus diesem ResourceBundle
kann dann mittels
${Gruppenname:Name}
abgerufen werden.
Variabel: Ja
Einschränkungen: Darf nicht leer sein und sollte keine Sonderzeichen enthalten.
Gibt das ResourceBundle
an, das geladen werden
soll. Hierfür ist etwas Java Verständnis nötig,
ggf. müssen Sie sich bei einem Entwickler erkundigen, wo die
Ressourcen für das SUT abgelegt sind.
Die Ressourcen werden mit Hilfe der Java Funktion
ResourceBundle.getBundle()
geladen. Dazu muss
eine passende Datei mit der Endung .class
oder
.properties
im CLASSPATH
zu finden
sein. Geben Sie in diesem Attribut den vollen Packagenamen
mit '.' als Trennzeichen an, sowie den Basisnamen des
Bundles ohne Locale und Endung.
Beispiel: QF-Test selbst enthält unter anderem ein
deutsches ResourceBundle
in der Datei
de/qfs/apps/qftest/resources/properties/qftest_de.properties
,
die im Archiv qfshared.jar
enthalten ist. Um
darauf zuzugreifen, müssten Sie hier den Wert
de.qfs.apps.qftest.resources.properties.qftest
angeben und das 'Locale' auf
de
setzen.
Variabel: Ja
Einschränkungen: Muss ein ResourceBundle
im
CLASSPATH
bezeichnen.
Das Hauptanwendungsgebiet von ResourceBundles
ist es, Daten in verschiedenen Sprachen
bereitzustellen. Hiermit legen Sie fest, welche Version des
Bundles geladen werden soll. Dabei wird eine dem ISO
Standard entsprechende Angabe der Form
Sprache_Land_Variante
erwartet. Sprache ist ein aus zwei Kleinbuchstaben
bestehendes Kürzel, z.B. de
für Deutsch oder
en
für Englisch. Land legt mit zwei
Großbuchstaben die landesspezifische Ausprägung fest,
z.B. en_UK
für britisches und
en_US
für amerikanisches Englisch. Mit der
Variante kann noch feiner unterschieden werden, was
aber selten benötigt wird.
QF-Test stützt sich zum Laden des Bundles auf den in der
Java Dokumentation für
ResourceBundle.getBundle()
beschriebenen
Mechanismus, der vereinfacht dargestellt wie folgt arbeitet:
Um ein ResourceBundle
namens res
für das Locale de_DE
zu laden, durchsucht
Java den CLASSPATH
zunächst nach einer Datei
namens res_de_DE.class
oder
res_de_DE.properties
, dann nach
res_de.class
oder
res_de.properties
und schließlich nach
res.class
und
res.properties
. Dabei werden die weniger
spezifischen Dateien auch dann geladen, wenn die
spezifischeren bereits gefunden wurden. Aus diesen werden
aber nur Werte übernommen, die nicht in der spezifischen
Datei definiert wurden. Dadurch können Sie z.B. in
res_de.properties
alle deutschen Ressourcen
ablegen. Wenn Sie einige davon für die Schweiz anders
definieren wollen, erstellen Sie die Datei
res_de_CH.properties
und geben dort nur die
abweichenden Definitionen an.
Java hat allerdings ein "Feature", das was zu einem
überraschenden Ergebnis führen kann: Wenn keine Datei außer
der Basisdatei res.properties
gefunden wurde,
sucht Java noch einmal nach spezifischen Dateien, diesmal
für das Standard Locale, in dem die VM gerade läuft. Wenn
Sie also mit dem deutschen QF-Test arbeiten und englische
Ressourcen laden wollen, die direkt in
res.properties
ohne weiteres
res_en.properties
enthalten sind und eine
deutsche Version in res_de.properties
liegt,
wird Java, selbst wenn Sie en
als Locale
angeben, die deutsche Version laden. Dies können Sie
unterbinden, indem Sie einen einzelnen Unterstrich '_' als
Locale angeben. In diesem Fall wird definitiv nur
res.properties
geladen.
Wenn Sie dieses Attribut leer lassen, wird das Standard Locale verwendet in dem QF-Test gerade läuft.
Variabel: Ja
Einschränkungen: Leer oder gültige Locale Bezeichnung
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.
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
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
|
Hiermit laden Sie Daten aus einer
|
Enthalten in: Alle Arten von Sequenzen.
Kinder: Keine
Ausführung:
Die Properties
werden geladen und unter dem
Gruppennamen
für spätere Zugriffe gebunden.
Attribute:
![]() | |||
Abbildung 39.76: 'Properties laden' Attribute |
Der Gruppenname unter dem die Properties
abgelegt werden. Der Wert einer Definition der Form
Name=Wert
aus diesen Properties
kann dann mittels
${Gruppenname:Name}
abgerufen werden.
Variabel: Ja
Einschränkungen: Darf nicht leer sein und sollte keine Sonderzeichen enthalten.
Legt die Datei fest, aus der die Properties geladen werden. Diese kann entweder mit absolutem Pfad angegeben werden, oder relativ zur aktuellen Suite. Als Trennzeichen für Verzeichnisse sollten Sie immer '/' angeben, QF-Test setzt es dann für das aktuelle Betriebssystem um.
Der "..." Button öffnet einen Dialog, in dem Sie die Datei 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 eine existierende Properties Datei bezeichnen.
Bis Java 8 mussten Properties-Dateien für die Klasse java.util.Properties
immer ISO-Latin-1
kodiert sein. Ab Java 9 ist die Standardkodierung hierfür UTF-8. QF-Test unterstützt beides und verwendet
die UTF-8 Kodierung, falls dieses Attribut gesetzt ist, andernfalls ISO-Latin-1.
Variabel: Ja
Einschränkungen: Keine
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.
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
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
| Hiermit können JUnit-Tests ausgeführt werden.
|
Enthalten in: Alle Arten von Sequenzen.
Kinder: Keine
Ausführung: Die benötigten Ressourcen und Injections werden geladen und vorbereitet. Dann werden nacheinander die einzelnen Test-Klassen ausgeführt.
Attribute:
![]() | |||
Abbildung 39.77: 'Unit Test' aus einem Skript ohne Verwendung eines Clients |
![]() | |||
Abbildung 39.78: 'Unit Test' aus Java-Klassen mit Verwendung eines Clients |
Ob die Unit Tests in einer eigenen Umgebung ausgeführt werden sollen. Falls diese Option deaktiviert ist, muss ein Client angegeben werden, in welchem die Tests ausgeführt werden.
Variabel: Ja
Einschränkungen: Keine.
Der Name unter dem der Java Prozess des SUT gestartet wurde, in dem das Skript ausgeführt werden soll.
Variabel: Ja
Einschränkungen: Darf nicht leer sein.
Die Quelle aus der die JUnit-Tests ausgeführt werden können. Diese kann entweder aus einem SUT-Skript bestehen oder aus Java-Klassen, welche in das SUT geladen werden.
Das Skript das ausgeführt werden soll.
Hinweis In Jython-Skripten können QF-Test Variablen der Form $(var) oder ${Gruppe:Name}
verwendet werden. Diese werden expandiert bevor das Skript an den Interpreter übergeben wird.
Dies kann zu unerwünschten Effekten führen.
Stattdessen sollte dafür die Methode rc.lookup(...)
verwendet werden,
die in allen Skriptsprachen zur Verfügung steht (vgl. Abschnitt 11.2.3.1).
Hinweis Trotz Syntax-Highlighting und automatischer
Einrückung ist dieses Textfeld womöglich nicht der geeignete Ort,
um komplexe Skripte zu schreiben. 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 das
Skript komfortabel bearbeitet werden kann. Außerdem können komplexe
Skripte in separate Module ausgelagert werden, die dann in QF-Test
Skripte importiert werden. (vgl. Kapitel 47).
Variabel: Ja
Einschränkungen: Gültige Syntax
Dieses Attribut legt den Interpreter fest, in dem das Skript ausgeführt wird, oder in anderen Worten die Skriptsprache. Mögliche Werte sind "Jython", "Groovy" und "JavaScript".
Variabel: Nein
Einschränkungen: Keine
Hier werden die Test-Klassen angegeben, welche über in den angegebenen Classpaths geladen wurden und ausgeführt werden sollen. Diese werden als Testschritte ausgeführt.
Anstatt vollständiger Klassennamen können auch Reguläre Ausdrücke angegeben werden.
Test-Klassen werden gefunden, wenn sie die JUnit 4 Test-Annotation besitzen,
von der JUnit 3 Klasse unit.org.TestCase
abgeleitet sind oder eine RunWith-Annotation besitzen.
Folgende Reguläre Ausdrücke sind möglich:
| |||||||||||
Tabelle 39.26: Mögliche Reguläre Ausdrücke |
Hinweis Beim Suchen der Test-Klassen werden alle Klassen,
die sich in den angegeben Verzeichnissen befinden, geladen.
Der Ausdruck **.*
lädt alle Klassen im Classpath
und somit auch deren statische Felder. Daher sollte er nur mit Vorsicht verwendet werden.
Variabel: Ja
Einschränkungen: Die Klasse muss vorhanden sein.
Hier können Dateien bzw. Ordner angegeben werden aus welchen die Test-Klassen geladen werden.
Variabel: Ja
Einschränkungen: Der angegebene Pfad muss gültig sein.
Mit den Injections können Objekte von QF-Test in die Unit Tests übertragen werden, um darin mit ihnen zu arbeiten.
| |||||||||||
Tabelle 39.27: Arten von Injections |
Hinweis Es muss kein Wert für "Feld" angegeben werden.
In diesem Fall wird als Standardwert instance
verwendet.
Variabel: Ja
Einschränkungen: Die Objekte müssen vorhanden sein.
Die GUI Engine in der das Skript ausgeführt werden soll. Nur relevant für SUTs mit mehr als einer GUI Engine wie in Kapitel 42 beschrieben.
Variabel: Ja
Einschränkungen: Siehe Kapitel 42
Der Name eines Unit Tests ist eine Art Kurzkommentar. Er wird in der Baumdarstellung der Testsuite angegeben und sollte etwas über die Funktion des Skripts aussagen.
Variabel: Nein
Einschränkungen: Keine
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.
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
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
![]() | ![]() | ![]() | ![]() | ![]() | ![]() | ![]() | Letzte Änderung: 15.3.2023 Copyright © 1999-2022 Quality First Software GmbH |