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
15
Testen von PDF Dokumenten
15.1  PDF Client Hauptfenster mit geöffnetem PDF Dokument
15.2  Check Text 'default' Aufnahme
15.3  Check Text 'Text positioniert' Aufnahme
15.4  Check Elemente 'Text als Elemente (gesamte Seite)' Aufnahme
15.5  Check Elemente 'Text positioniert als Elemente (gesamte Seite)' Aufnahme
15.6  Check Text 'Text (gesamte Seite)' Aufnahme
15.7  Check Text 'Text positioniert (gesamte Seite)' Aufnahme
15.8  Check Abbild 'default' Aufnahme eines Text Objekts
15.9  Check Abbild 'default' Aufnahme eines Image Objekts
15.10  Check Abbild 'unskaliert' Aufnahme eines Image Objekts
15.11  Check Abbild 'skaliert' Aufnahme eines Image Objekts
16
Testen von Webdiensten
16.1  Die vom Browser abgesetzte HTTP GET Anfrage
16.2  Die GET Antwort des Webservers
17
Datengetriebenes Testen
17.1  Ein einfacher datengetriebener Test
17.2  Beispiel einer 'Datentabelle'
17.3  Protokoll eines datengetriebenen Tests
17.4  Datengetriebene Tests mit verschachtelten Schleifen
17.5  Zweites Beispiel einer 'Datentabelle'
17.6  Protokoll eines datengetriebenen Tests mit verschachtelten Schleifen
18
Reports und Testdokumentation
18.1  Beispiel Report
19
Testausführung
19.1  Dialog zur Wiederausführung von Testfällen
20
Verteilte Entwicklung von Tests
20.1  Ergebnis einer Analyse
3.0+
21
Automatisierte Erstellung von Basisprozeduren
21.1  Aufgezeichnete Prozeduren
21.2  Die Procedure Builder Definitionsdatei
3.0+
22
Anbindung an Testmanagementtools
22.1  Integration mit ALM - Quality Center
22.2  QF-Test VAPI-XP-TEST Testfall in HP ALM - Quality Center
22.3  Im Testplan einen neuen Testfallsatz anlegen
22.4  Test vom Typ VAPI-XP-TEST anlegen
22.5  HP VAPI-XP Wizard
22.6  VAPI-XP-TEST Details
22.7  Template in Textbereich des Skripts kopieren
22.8  Neuer Testfallsatz im Testlabor
22.9  Test zu Ausführung hinzufügen
22.10  Ausführung des Tests
22.11  Testresultat
22.12  Hochgeladenes Protokoll
22.13  Skript Debuglauf
22.14  QF-Test Protokoll in QMetry
23
Integration mit Entwickler-Tools
23.1  Eclipse Plugin Konfiguration - Reiter "Main"
23.2  Eclipse Plugin Konfiguration - Reiter "Settings"
23.3  Eclipse Plugin Konfiguration - Reiter "Initial Settings"
23.4  Jenkins nach dem Start.
23.5  QF-Test Plugin installiert.
23.6  Verzeichnis des Arbeitsbereichs anpassen.
23.7  Build-Schritt hinzufügen.
23.8  Erweitere Optionen für den Build-Schritt.
23.9  Post-Build-Aktionen konfigurieren.
24
Schlüsselwortgetriebenes bzw. Keyword-Driven Testing mit QF-Test
24.1  Exceldatei fachliche Schlüsselwörter
24.2  Testsuite fachliche Schlüsselwörter
24.3  Prozedur fillDialog
24.4  Exceldatei generische Komponenten
24.5  Testsuite generische Komponenten
24.6  Testsuite Behavior-Driven Testing technisch
24.7  Testsuite Behavior-Driven Testing fachlich
24.8  Exceldatei als Szenariodatei
24.9  Testsuite Szenariodateien
25
Durchführung von Lasttests mit QF-Test
25.1  Lasttest Szenario
25.2  Übersicht Lasttest Umgebung
25.3  Die Beispieltestsuite daemonController_twoPhases.qft
25.4  Der Aufruf von rc.syncThreads in der Beispieltestsuite
3.0+
26
Ausführung manueller Tests mit QF-Test
26.1  Beispiel für einen ManualStepDialog
27
Steuern und Testen von nativen Windows Anwendungen
27.1  UI Automation Prozeduren in der Standardbibliothek
27.2  Die WPF Demo-Applikation
27.3  Hilfemenü
27.4  Fehlgeschlagener Image check im Protokoll
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  Debugger Optionen
36.31  Protokoll Optionen
36.32  Optionen für den Inhalt von Protokollen
36.33  Optionen für Verweise zwischen Verzeichnissen mit Testsuiten
36.34  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
3.3+
51
Details des Algorithmus zum Bildvergleich
51.1  Ausgangsbild
51.2  Klassischer Bildvergleich
51.3  Pixelbasierter Vergleich
51.4  Pixelbasierte Ähnlichkeitsanalyse
51.5  Blockbildung mit Vergleich
51.6  Blockbildung mit Ähnlichkeitsanalyse
51.7  Häufigkeitsanalyse mittels Histogramm
51.8  Bildanalyse mittels Diskreter Kosinustransformation
51.9  Blockbildung zur Bildanalyse mittels Diskreter Kosinustransformation
51.10  Bilinearer Filter
51.11  Bild-in-Bild Suche: Erwartetes Abbild
51.12  Bild-in-Bild Suche: Erhaltenes Abbild
3.2+
52
Resultatslisten
52.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