List of figures

2
The user interface
2.1  Structure of a test suite
2.2  Insertion marker
2.3  Example table
2.4  The simple search dialog
2.5  The advanced search dialog
2.6  Result list for 'Locate references'
2.7  Incremental search
2.8  The replace dialog
2.9  The replace query dialog
2.0+
3
Quickstart your application
3.1  Quickstart Wizard
3.2  Startup sequence created by the Quickstart Wizard
3.3  GUI technology information
4
Capture and replay
4.1  Disabled and enabled Record button
5
Components
5.1  Components of a GUI
5.2  Readability of SmartIDs
5.3  Readability of identifiers
5.4  Readability of SmartIDs in panels with description
5.5  Component tree 1
5.6  Stable component recognition - Example 1
5.7  Stable component recognition - Example 2
5.8  Using a regular expression in the 'Feature' attribute
5.9  Component hierarchy of a Swing SUT
5.10  Component node
5.11  Extra feature attribute for component recognition via XPath or CSS selector.
5.12  An 'Item' for a table cell
5.13  Update components dialog
5.14  UI Inspector
5.15  General information
5.16  Web-specific information
5.17   Android-specific information
5.18   Windows-specific information
5.19   Swing-specific information
5.20   FX-specific information
5.21   SWT-specific information
5.22  QF-Test specific information
6
Variables
6.1  Direct and fallback bindings
6.2  System variables
6.3  Variable example
6.4  Variable bindings example
7
Problem analysis and debugging
7.1  A simple test and its run log
7.2  Error states in a run log
7.3  Display of duration indicators in the run log
8
Organizing the test suite
8.1  Test suite structure
8.2  Test structure with simple 'Setup' and 'Cleanup'
8.3  Test execution with simple 'Setup' and 'Cleanup'
8.4  'Packages' and 'Procedures'
8.5  Dependency stack A-B-C
8.6  Good practice 'Setup' node
8.7  Dependency stack A-B-D-E
8.8  'Dependency' with 'Characteristic variables'
8.9  Exception in forced cleanup sequence of C causes B to clean up
8.10  Typical 'Cleanup' node
8.11  Example 'Test set' for name spaces
8.12  Dependency handling for test case 'Data entry by User A'
8.13  Dependency handling for test case 'Offer processing by User C'
8.14  Dependency handling for test case 'Check offer 1 in DMS'
8.15  Dependency handling for test case 'Data entry by User B'
8.16  Dependency handling for test case 'Offer processing by User D'
8.17  Dependency handling for test case 'Check offer 2 in DMS'
3.5+
9
Projects
9.1  The project view
10
The standard library
10.1  Standard library qfs.qft
11
Scripting
11.1  Detail view of a 'Server script' with help window for rc methods
11.2  Overview of the types of variables in QF-Test
12
Unit Tests
12.1  Unit Test node with Java classes
12.2  Example Unit Test node with Injections
12.3  Example Unit Test node with Injections
12.4  Unit Test Report
14
Web testing
14.1  Cross-Browser Tests
6.0+
16
Testing Android applications
16.1  Android studio start screen
16.2  Android studio virtual device creation screen
16.3  Android studio screen to chose a device definition
16.4  Android studio screen to download and select the system image
16.5  Android studio screen to finish the AVD configuration procedure
16.6  Android studio screen showing available AVDs
16.7  Quickstart wizard screen to select the application type
16.8  Quickstart wizard screen to select the emulate as test device
16.9  Quickstart wizard screen to select the AVD
16.10  Quickstart wizard screen to select an APK
16.11  Quickstart wizard screen to specify the client name
16.12  Android setup sequence created by the quickstart wizard
16.13  Android emulator window
16.14  Quickstart wizard screen to select the application type
16.15  Quickstart wizard screen to select the real device
16.16  Quickstart wizard screen to select a .apk file
16.17  Quickstart wizard screen to specify the client name
16.18  Android setup sequence created by the quickstart wizard
16.19  QF-Test Android recording window
16.20  Android utility procedures
6.0+
17
Testing iOS applications
17.1  Xcode in the macOS App Store
17.2  Recommended App Store settings
17.3  Platform management in Xcode
17.4  The iOS Simulator menu
17.5  Navigate to the iOS profile trust section
17.6  Quickstart wizard screen to select the application type
17.7  Quickstart wizard screen to select the test device
17.8  Quickstart wizard screen to select an app file
17.9  Quickstart wizard screen to specify the client name
17.10  iOS setup sequence created by the quickstart wizard
17.11  QF-Test iOS recording window
17.12  iOS utility procedures
18
Testing PDF documents
18.1  PDF Client main window with PDF document
18.2  Check text 'default'
18.3  Check text 'Text positioned'
18.4  Check Items 'Text as items (whole page)'
18.5  Check Items 'Text positioned as items (whole page)'
18.6  Check text 'Text (whole page)'
18.7  Check text 'Text positioned (whole page)'
18.8  Check Image 'default' recording of a Text object
18.9  Check Image 'default' recording of an Image object
18.10  Check Image 'unscaled' recording of an Image object
18.11  Check Image 'scaled' recording of an Image object
21
Testing web services
21.1  Browser send HTTP GET
21.2  GET response
22
Data-driven testing
22.1  A simple data-driven test
22.2  'Data table' example
22.3  Run log of a data-driven test
22.4  Data-driven test with nested loops
22.5  Second data table example
22.6  Run log of a data-driven test with nested loops
23
Reports and test documentation
23.1  Example report
24
Test execution
24.1  Dialog to rerun test cases
25
Distributed test development
25.1  Result of analyzing references
3.0+
26
Automated Creation of Basic Procedures
26.1  Recorded procedures
26.2  The Procedure Builder definition file
3.0+
27
Interaction with Test Management Tools
27.1  Integration with ALM - QualityCenter
27.2  QF-Test VAPI-XP-TEST test case in HP ALM - QualityCenter
27.3  In Test plan create new Test set
27.4  Create new test of type VAPI-XP-TEST
27.5  HP VAPI-XP Wizard
27.6  Test details
27.7  Copy template content to script text area
27.8  New test set in Test lab section
27.9  Add test to execution grid
27.10  Run the test
27.11  Test result
27.12  Uploaded run log
27.13  Script debug run
27.14  QF-Test run log in QMetry
28
Integration with Development Tools
28.1  Eclipse plugin configuration - tab 'Main'
28.2  Eclipse plugin configuration - Tab 'Settings'
28.3  Eclipse plugin configuration - Tab 'Initial Settings'
28.4  Jenkins after start-up.
28.5  Install QF-Test Plugin.
30
Keyword-driven testing with QF-Test
30.1  Excel file business-related keywords
30.2  Test suite business-related keywords
30.3  Procedure fillDialog
30.4  Excel file of generic components
30.5  Test suite for generic components
30.6  Test suite Behavior-driven testing technical
30.7  Test suite Behavior-driven testing from business perspective
30.8  Excel file as scenario file
30.9  Test suite scenario file
32
Performing GUI-based load tests
32.1  Load testing scenario
32.2  Overview load testing project
32.3  Sample test suite daemonController_twoPhases.qft
32.4  Call of rc.syncThreads in demo test suite
3.0+
33
Executing Manual Tests in QF-Test
33.1  Example for a ManualStepDialog
36
Organizing test suites
36.1  Structure of multiple test suites
36.2  Including test suites of level 1
36.3  Structure of different test suites with roles
40
Options
40.1  Options tree
40.2  General options
40.3  Projects
40.4  Saving test suites
40.5  Display
40.6  Editing
40.7  Bookmarks
40.8  External tools options
40.9  Backup file options
40.10  Library path option
40.11  License options
40.12  Update options
40.13  Recording options
40.14  Options for events to record
40.15  Options for events to pack
40.16  Dragging to a sub-menu
40.17  Options for recording components
40.18  Popup menu for recording components
40.19  Options for recording sub-items
40.20  Options for the recording window
40.21  Procedure Builder options
40.22  Replay options
40.23  Client options
40.24  Terminal options
40.25  Event handling options
40.26  Component recognition options
40.27  Delay options
40.28  Timeout options
40.29  Options for replay backward compatibility
40.30  SmartID und qfs:label-Optionen
40.31  Options for Android
40.32  Options for iOS Tests
40.33  Web options
40.34  Options for HTTP Requests
40.35  Options for web backward compatibility
40.36  SWT options
40.37  Debugger options
40.38  General run log options
40.39  Options for splitting run logs
40.40  Options determining run log content
40.41  Options for mapping between directories with test suites
40.42  Variable options
41
Elements of a test suite
41.1  'Test suite' attributes
41.2  'Test case' attributes
41.3  'Test set' attributes
41.4  'Test call' Attributes
41.5  'Sequence' attributes
41.6  'Test step' attributes
41.7  'Sequence with time limit' attributes
41.8  'Extras' attributes
41.9  'Dependency' attributes
41.10  'Dependency reference' attributes
41.11  'Setup' attributes
41.12  'Cleanup' attributes
41.13  'Error handler' attributes
41.14  'Data driver' attributes
41.15  'Data table' attributes
41.16  'Database' attributes
41.17  'Excel data file' attributes
41.18  'CSV data file' attributes
41.19  'Data loop' attributes
41.20  'Procedure' Attributes
41.21  'Procedure call' Attributes
41.22  'Return' Attributes
41.23  'Package' Attributes
41.24  'Procedures' Attributes
41.25  'Loop' attributes
41.26  'While' attributes
41.27  'Break' attributes
41.28  'If' attributes
41.29  'Elseif' attributes
41.30  'Else' attributes
41.31  'Try' attributes
41.32  'Catch' attributes
41.33  'Finally' attributes
41.34  'Throw' attributes
41.35  'Rethrow' attributes
41.36  'Server script' attributes
41.37  'SUT script' attributes
41.38  'Start Java SUT client' attributes
41.39  'Start SUT client' attributes
41.40  'Start process' attributes
41.41  'Execute shell command' attributes
41.42  'Start web engine' attributes
41.43  'Start PDF client' attributes
41.44  'Start windows application' attributes
41.45  'Attach to windows application' attributes
41.46  'Launch Android emulator' attributes
41.47  'Connect to Android device' Attributes
41.48  'Connect to iOS device' Attributes
41.49  'Wait for client to connect' attributes
41.50  'Wait for mobile device' Attributes
41.51  'Open browser window' attributes
41.52  'Launch a mobile app' attributes
41.53  'Stop client' attributes
41.54  'Wait for process to terminate' attributes
41.55  'Mouse event' attributes
41.56  'Key event' attributes
41.57  'Text input' attributes
41.58  'Window event' attributes
41.59  'Component event' attributes
41.60  'Selection' attributes
41.61  'File selection' attributes
41.62  'Check text' attributes
41.63  'Boolean check' attributes
41.64  'Check items' attributes
41.65  'Check selectable items' attributes
41.66  'Check image' attributes
41.67  'Check geometry' attributes
41.68  'Fetch text' attributes
41.69  'Fetch index' attributes
41.70  'Fetch geometry' attributes
41.71  'Comment' attributes
41.72  'Error' attributes
41.73  'Warning' attributes
41.74  'Message' attributes
41.75  'Set variable' attributes
41.76  'Wait for component to appear' attributes
41.77  'Wait for document to load' attributes
41.78  'Wait for download to finish' attributes
41.79  'Load resources' attributes
41.80  'Load properties' attributes
41.81  'Unit test' server attributes
41.82  'Unit test' client attributes
41.83  'Install CustomWebResolver' attributes
41.84  'CustomWebResolver' configuration template actions
41.85  'CustomWebResolver' edit menu
41.86  'Server HTTP request' Attribute
41.87  'Browser HTTP request' Attribute
41.88  'Window' attributes
41.89  'Web page' attributes
41.90  'Component' attributes
41.91  'Item' attributes
41.92  'Window group' attributes
41.93  'Component group' attributes
41.94  'Windows and components' attributes
41.95  'Test' attributes
41.96  CustomWebResolver call in 'Setup' node of the Quickstart Wizard
45
Running an application from QF-Test
45.1  Starting the SUT from a script or executable
45.2  Starting the SUT through Java WebStart
45.3  Starting the SUT from a jar archive
45.4  Starting the SUT via the main class
45.5  Launch the browser process
45.6  Open the web site in the browser
45.7  Opening a PDF Document
50
Web
50.1  Reduction of complexity for "CarConfigurator Web" demo
50.2  Installing the 'CustomWebResolver' in the 'Setup' node of the Quickstart Wizard
50.3  'CustomWebResolver' configuration templates
50.4  'CustomWebResolver' with a template for genericClasses
50.5  'CustomWebResolver' with two generic classes
50.6  'CustomWebResolver' with more complex mapping
50.7  CarConfigurator Web
50.8  CarConfigurator Web
50.9  Simplification due to simple class mapping
50.10  Recording of '-5%' button in "CarConfigurator Web" demo
50.11  Recording with genericClasses in "CarConfigurator Web"
50.12  Simplification due to advanced class mapping
50.13  Recording of SPAN text fields
50.14  Recording text fields in "CarConfigurator Web"
50.15  Simplification for complex components
50.16  Recording of a table in "CarConfigurator Web"
50.17  Recording of resolved table item in "CarConfigurator Web"
50.18  Simplification of the "CarConfigurator Web" demo
51
Controlling native Windows applications via the UIAuto module - without the QF-Test win engine
51.1  UI Automation procedures in the standard library
51.2  The WPF demo application
53
Extension APIs
53.1  Pseudo class hierarchy for web elements
3.3+
58
Details about the algorithm for image comparison
58.1  Original image
58.2  Classic image check
58.3  Pixel-based identity check
58.4  Pixel-based similarity check
58.5  Block-based identity check
58.6  Block-based similarity check
58.7  Histogram
58.8  Analysis with Discrete Cosine Transformation
58.9  Block-based analysis with Discrete Cosine Transformation
58.10  Bilinear Filter
58.11  Image-in-image search: Expected image
58.12  Image-in-image search: Got image
3.2+
59
Result lists
59.1  Sample result list for 'Locate references'
A
FAQ - Frequently Asked Questions
A.1  Set browser maximum memory
C
Keyboard shortcuts
C.1  Keyboard helper