Handbuch

Abbildungsverzeichnis
2
Bedienung von QF-Test
2.1  Struktur einer Testsuite
2.2  Einfügemarkierung
2.3  Beispieltabelle
2.4  Der Dialog für die einfache Suche
2.5  Der fortgeschrittene Suchdialog
2.6  Resultatsliste von 'Referenzen finden'
2.7  Die inkrementelle Suche
2.8  Der Ersetzen Dialog
2.9  Der Rückfrage Dialog beim Ersetzen
2.0+
3
Schnellstart Ihrer Anwendung
3.1  Der Schnellstart-Assistent
3.2  Startsequenz als Resultat des Schnellstart-Assistenten
3.3  Information zu genutzten GUI-Technologien
4
Aufnahme und Wiedergabe
4.1  Gesperrter und aktivierbarer Aufnahmeknopf
5
Komponenten
5.1  Komponenten eines GUI
5.2  Komponentenhierarchie eines Swing SUT
5.3  Pseudo Klassenhierarchie für Elemente von Webanwendungen
5.4  Komponenten aktualisieren Dialog
6
Unterelemente komplexer GUI Komponenten
6.1  Ein 'Element' für ein Tabellenfeld
6.2  Extra Feature Attribute für die Komponentenerkennung anhand von XPath oder CSS-Selektoren.
7
Variablen
7.1  Direkte Zuordnungen und Defaultwerte
7.2  System Variablen
7.3  Variablen Beispiel
7.4  Beispiel zu Variablenbindungen
8
Problemanalyse und Debugging
8.1  Ein einfacher Test und sein Protokoll
8.2  Fehlerzustände im Protokoll
9
Aufbau und Organisation einer Testsuite
9.1  Struktur einer Testsuite
9.2  Teststruktur mit einfacher 'Vorbereitung' und 'Aufräumen'
9.3  Ausführungsreihenfolge bei einfacher Vorbereitung und Aufräumen
9.4  'Packages' und 'Prozeduren'
9.5  Stapel von Abhängigkeiten A-B-C
9.6  Typischer 'Vorbereitung' Knoten
9.7  Stapel von Abhängigkeiten A-B-D-E
9.8  'Charakteristische Variablen'
9.9  Fehlereskalation in 'Abhängigkeiten'
9.10  Typischer 'Aufräumen' Knoten
9.11  Beispiel 'Testfallsatz' für Namensräume
9.12  Abhängigkeitenbehandlung für Testfall Datenerfassung durch Anwender A
9.13  Abhängigkeitenbehandlung für Testfall Angebotserstellung durch Anwender C
9.14  Abhängigkeitenbehandlung für Testfall Angebot 1 im Archiv prüfen
9.15  Abhängigkeitenbehandlung für Testfall Datenerfassung durch Anwender B
9.16  Abhängigkeitenbehandlung für Testfall Angebotserstellung durch Anwender D
9.17  Abhängigkeitenbehandlung für Testfall Angebot 2 im Archiv prüfen
3.5+
10
Projekte
10.1  Die Projektansicht
11
Standardbibliothek
11.1  Standardbibliothek qfs.qft
12
Skripting
12.1  Detailansicht eines 'Server Skript' Knotens mit Hilfefenster für rc-Methoden
12.2  Übersicht über die verschiedenen Variablen in QF-Test
13
Unit Tests
13.1  Unit Test-Knoten mit Java-Klassen
13.2  Beispiel eines 'Unit Test' Knotens mit Injections
13.3  Beispiel eines 'Unit Test'-Knotens mit WebDriver-Injections
13.4  Unit Test Report
16
Testen von PDF Dokumenten
16.1  PDF Client Hauptfenster mit geöffnetem PDF Dokument
16.2  Check Text 'default' Aufnahme
16.3  Check Text 'Text positioniert' Aufnahme
16.4  Check Elemente 'Text als Elemente (gesamte Seite)' Aufnahme
16.5  Check Elemente 'Text positioniert als Elemente (gesamte Seite)' Aufnahme
16.6  Check Text 'Text (gesamte Seite)' Aufnahme
16.7  Check Text 'Text positioniert (gesamte Seite)' Aufnahme
16.8  Check Abbild 'default' Aufnahme eines Text Objekts
16.9  Check Abbild 'default' Aufnahme eines Image Objekts
16.10  Check Abbild 'unskaliert' Aufnahme eines Image Objekts
16.11  Check Abbild 'skaliert' Aufnahme eines Image Objekts
18
Testen von Webdiensten
18.1  Die vom Browser abgesetzte HTTP GET Anfrage
18.2  Die GET Antwort des Webservers
19
Datengetriebenes Testen
19.1  Ein einfacher datengetriebener Test
19.2  Beispiel einer 'Datentabelle'
19.3  Protokoll eines datengetriebenen Tests
19.4  Datengetriebene Tests mit verschachtelten Schleifen
19.5  Zweites Beispiel einer 'Datentabelle'
19.6  Protokoll eines datengetriebenen Tests mit verschachtelten Schleifen
20
Reports und Testdokumentation
20.1  Beispiel Report
21
Testausführung
21.1  Dialog zur Wiederausführung von Testfällen
22
Verteilte Entwicklung von Tests
22.1  Ergebnis einer Analyse
3.0+
23
Automatisierte Erstellung von Basisprozeduren
23.1  Aufgezeichnete Prozeduren
23.2  Die Procedure Builder Definitionsdatei
3.0+
24
Anbindung an Testmanagementtools
24.1  Integration mit ALM - Quality Center
24.2  QF-Test VAPI-XP-TEST Testfall in HP ALM - Quality Center
24.3  Im Testplan einen neuen Testfallsatz anlegen
24.4  Test vom Typ VAPI-XP-TEST anlegen
24.5  HP VAPI-XP Wizard
24.6  VAPI-XP-TEST Details
24.7  Template in Textbereich des Skripts kopieren
24.8  Neuer Testfallsatz im Testlabor
24.9  Test zu Ausführung hinzufügen
24.10  Ausführung des Tests
24.11  Testresultat
24.12  Hochgeladenes Protokoll
24.13  Skript Debuglauf
24.14  QF-Test Protokoll in QMetry
25
Integration mit Entwickler-Tools
25.1  Eclipse Plugin Konfiguration - Reiter "Main"
25.2  Eclipse Plugin Konfiguration - Reiter "Settings"
25.3  Eclipse Plugin Konfiguration - Reiter "Initial Settings"
25.4  Jenkins nach dem Start.
25.5  QF-Test Plugin installiert.
25.6  Verzeichnis des Arbeitsbereichs anpassen.
25.7  Build-Schritt hinzufügen.
25.8  Erweitere Optionen für den Build-Schritt.
25.9  Post-Build-Aktionen konfigurieren.
26
Schlüsselwortgetriebenes bzw. Keyword-Driven Testing mit QF-Test
26.1  Exceldatei fachliche Schlüsselwörter
26.2  Testsuite fachliche Schlüsselwörter
26.3  Prozedur fillDialog
26.4  Exceldatei generische Komponenten
26.5  Testsuite generische Komponenten
26.6  Testsuite Behavior-Driven Testing technisch
26.7  Testsuite Behavior-Driven Testing fachlich
26.8  Exceldatei als Szenariodatei
26.9  Testsuite Szenariodateien
27
Durchführung von Lasttests mit QF-Test
27.1  Lasttest Szenario
27.2  Übersicht Lasttest Umgebung
27.3  Die Beispieltestsuite daemonController_twoPhases.qft
27.4  Der Aufruf von rc.syncThreads in der Beispieltestsuite
3.0+
28
Ausführung manueller Tests mit QF-Test
28.1  Beispiel für einen ManualStepDialog
31
Organisation von Testsuiten
31.1  Struktur mit mehreren Testsuiten
31.2  'Include' Bereich von Ebene 1 Testsuiten
31.3  Struktur von Testsuiten mit Rollen
33
Wie erreicht man eine robuste Komponentenerkennung?
33.1  Standardeinstellung Komponentenaufzeichnung
33.2  Standardeinstellungen für die Wiedergabe
33.3  'Name übertrifft alles' Einstellung für die Aufzeichnung
33.4  'Name übertrifft alles' Einstellung für das Abspielen
33.5  Ein regulärer Ausdruck im 'Merkmal' Attribut
33.6  Option um nur Systemklassen aufzuzeichnen
36
Einstellungen
36.1  Optionen Baumstruktur
36.2  Allgemeine Optionen
36.3  Editieren
36.4  Projekte
36.5  Lesezeichen
36.6  Optionen für Externe Programme
36.7  Optionen für Sicherungskopien
36.8  Bibliothekspfad Option
36.9  Lizenz Optionen
36.10  Optionen für Updates
36.11  Aufnahme Optionen
36.12  Optionen für die Aufnahme von Events
36.13  Optionen für das Packen von Events
36.14  Ziehen in ein Untermenü
36.15  Option für die Aufnahme von Komponenten
36.16  Popupmenü zum Aufnehmen von Komponenten
36.17  Option für die Aufnahme von Unterelementen
36.18  Procedure Builder Optionen
36.19  Wiedergabe Optionen
36.20  Client Optionen
36.21  Terminal options
36.22  Optionen zur Eventbehandlung
36.23  Optionen zur Wiedererkennung
36.24  Verzögerungsoptionen
36.25  Timeout Optionen
36.26  Optionen für Wiedergabe Rückwärtskompatibilität
36.27  Web Optionen
36.28  Optionen für HTTP Requests
36.29  Optionen für Web Rückwärtskompatibilität
36.30  SWT Optionen
36.31  Debugger Optionen
36.32  Protokoll Optionen
36.33  Optionen für den Inhalt von Protokollen
36.34  Optionen für Verweise zwischen Verzeichnissen mit Testsuiten
36.35  Variablen Optionen
37
Bestandteile einer Testsuite
37.1  'Testsuite' Attribute
37.2  'Testfall' Attribute
37.3  'Testfallsatz' Attribute
37.4  'Testaufruf' Attribute
37.5  'Sequenz' Attribute
37.6  'Testschritt' Attribute
37.7  'Sequenz mit Zeitlimit' Attribute
37.8  'Extrasequenzen' Attribute
37.9  'Abhängigkeit' Attribute
37.10  'Bezug auf Abhängigkeit' Attribute
37.11  'Vorbereitung' Attribute
37.12  'Aufräumen' Attribute
37.13  'Fehlerbehandlung' Attribute
37.14  'Datentreiber' Attribute
37.15  'Datentabelle' Attribute
37.16  'Datenbank' Attribute
37.17  'Excel Datei' Attribute
37.18  'CSV Datei' Attribute
37.19  'Datenschleife' Attribute
37.20  'Prozedur' Attribute
37.21  'Prozeduraufruf' Attribute
37.22  'Return' Attribute
37.23  'Package' Attribute
37.24  'Prozeduren' Attribute
37.25  'Schleife' Attribute
37.26  'While' Attribute
37.27  'Break' Attribute
37.28  'If' Attribute
37.29  'Elseif' Attribute
37.30  'Else' Attribute
37.31  'Try' Attribute
37.32  'Catch' Attribute
37.33  'Finally' Attribute
37.34  'Throw' Attribute
37.35  'Rethrow' Attribute
37.36  'Server Skript' Attribute
37.37  'SUT Skript' Attribute
37.38  'Java SUT Client starten' Attribute
37.39  'SUT Client starten' Attribute
37.40  'Programm starten' Attribute
37.41  'Web-Engine starten' Attribute
37.42  'Browser-Fenster öffnen' Attribute
37.43  'Shellkommando ausführen' Attribute
37.44  'PDF Client starten' Attribute
37.45  'Warten auf Client' Attribute
37.46  'Programm beenden' Attribute
37.47  'Warten auf Programmende' Attribute
37.48  'Mausevent' Attribute
37.49  'Tastaturevent' Attribute
37.50  'Texteingabe' Attribute
37.51  'Fensterevent' Attribute
37.52  'Komponentenevent' Attribute
37.53  'Auswahl' Attribute
37.54  'Dateiauswahl' Attribute
37.55  'Check Text' Attribute
37.56  'Check Boolean' Attribute
37.57  'Check Elemente' Attribute
37.58  'Check selektierbare Elemente' Attribute
37.59  'Check Abbild' Attribute
37.60  'Check Geometrie' Attribute
37.61  'Text auslesen' Attribute
37.62  'Index auslesen' Attribute
37.63  'Geometrie auslesen' Attribute
37.64  'Variable setzen' Attribute
37.65  'Warten auf Komponente' Attribute
37.66  'Warten auf Laden des Dokuments' Attribute
37.67  'Warten auf Ende des Downloads' Attribute
37.68  'Ressourcen laden' Attribute
37.69  'Properties laden' Attribute
37.70  'Unit Test' aus einem Skript ohne Verwendung eines Clients
37.71  'Unit Test' aus Java-Klassen mit Verwendung eines Clients
37.72  'Server HTTP Request' Attribute
37.73  'Browser HTTP Request' Attribute
37.74  'Fenster' Attribute
37.75  'Webseite' Attribute
37.76  'Komponente' Attribute
37.77  'Element' Attribute
37.78  'Fenstergruppe' Attribute
37.79  'Komponentengruppe' Attribute
37.80  'Fenster und Komponenten' Attribute
37.81  'Test' Attribute
41
Starten einer Applikation aus QF-Test
41.1  Starten des SUT aus einem Skript oder ausführbaren Programm
41.2  Starten des SUT mittels Java WebStart
41.3  Starten des SUT als Applet in einem Web Browser
41.4  Starten des SUT aus einem jar Archiv
41.5  Starten des SUT über die Startklasse
41.6  Starten einer Webanwendung im Browser
41.7  Öffnen eines PDF Dokuments
42
JDK und SWT Instrumentierung
42.1  Dialog zur JDK Instrumentierung
45
Besondere Features für Webanwendungen
45.1  Webseitenuntersuchung im Firefox
45.2  Verbesserung durch Zuweisung des Beispiels vom WebCarConfigurator
45.3  WebCarConfigurator
45.4  Verbesserung durch einfache Klassenzuweisung
45.5  Aufzeichnung des '-5%' Buttons im WebCarConfigurator
45.6  Aufzeichnung mit genericClasses im WebCarConfigurator
45.7  Verbesserung durch fortgeschrittene Klassenzuweisung
45.8  Aufzeichnung der SPAN Komponenten
45.9  Aufzeichnung der Textfelder des WebCarConfigurator
45.10  Verbesserung durch Zuweisung komplexer Komponenten
45.11  Aufzeichnung einer Tabelle im WebCarConfigurator
45.12  Aufzeichnung einer aufgelösten Tabelle im WebCarConfigurator
45.13  Verbesserung durch Zuweisung des Beispiels vom WebCarConfigurator
46
Steuern und Testen von nativen Windows Anwendungen - ohne Verwendung der QF-Test win Engine
46.1  UI Automation Prozeduren in der Standardbibliothek
46.2  Die WPF Demo-Applikation
46.3  Hilfemenü
46.4  Fehlgeschlagener Image check im Protokoll
3.3+
53
Details des Algorithmus zum Bildvergleich
53.1  Ausgangsbild
53.2  Klassischer Bildvergleich
53.3  Pixelbasierter Vergleich
53.4  Pixelbasierte Ähnlichkeitsanalyse
53.5  Blockbildung mit Vergleich
53.6  Blockbildung mit Ähnlichkeitsanalyse
53.7  Häufigkeitsanalyse mittels Histogramm
53.8  Bildanalyse mittels Diskreter Kosinustransformation
53.9  Blockbildung zur Bildanalyse mittels Diskreter Kosinustransformation
53.10  Bilinearer Filter
53.11  Bild-in-Bild Suche: Erwartetes Abbild
53.12  Bild-in-Bild Suche: Erhaltenes Abbild
3.2+
54
Resultatslisten
54.1  Ergebnis von 'Referenzen finden'
A
FAQ - Häufig gestellte Fragen
A.1  Maximalen Speicher für Browser setzen
C
Tastaturkürzel
C.1  Tastaturhelfer