Manual

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
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  Component hierarchy of a Swing SUT
5.3  Pseudo class hierarchy for web elements
5.4  Update components dialog
6
Sub-items of complex GUI components
6.1  An 'Item' for a table cell
6.2  Extra Feature attributes for x-path or css-selector component recognition.
7
Variables
7.1  Direct and fallback bindings
7.2  System variables
7.3  Variable example
7.4  Variable bindings example
8
Problem analysis and debugging
8.1  A simple test and its run-log
8.2  Error states in a run-log
9
Organizing the test-suite
9.1  Test-suite structure
9.2  Test structure with simple 'Setup' and 'Cleanup'
9.3  Test execution with simple 'Setup' and 'Cleanup'
9.4  'Packages' and 'Procedures'
9.5  Dependency stack A-B-C
9.6  Good practice 'Setup' node
9.7  Dependency stack A-B-D-E
9.8  'Dependency' with 'Characteristic variables'
9.9  Exception in forced cleanup sequence of C causes B to clean up
9.10  Typical 'Cleanup' node
9.11  Example 'Test-set' for name spaces
9.12  Dependency handling for test-case 'Data entry by User A'
9.13  Dependency handling for test-case 'Offer processing by User C'
9.14  Dependency handling for test-case 'Check offer 1 in DMS'
9.15  Dependency handling for test-case 'Data entry by User B'
9.16  Dependency handling for test-case 'Offer processing by User D'
9.17  Dependency handling for test-case 'Check offer 2 in DMS'
3.5+
10
Projects
10.1  The project view
11
The standard library
11.1  Standard library qfs.qft
12
Scripting
12.1  Detail view of a 'Server script' with help window for rc methods
12.2  Overview of the types of variables in QF-Test
13
Unit Tests
13.1  Unit Test node with Java classes
13.2  Example Unit Test node with Injections
13.3  Example Unit Test node with Injections
13.4  Unit Test Report
15
Testing PDF documents
15.1  PDF Client main window with PDF document
15.2  Check text 'default'
15.3  Check text 'Text positioned'
15.4  Check Items 'Text as items (whole page)'
15.5  Check Items 'Text positioned as items (whole page)'
15.6  Check text 'Text (whole page)'
15.7  Check text 'Text positioned (whole page)'
15.8  Check Image 'default' recording of a Text object
15.9  Check Image 'default' recording of an Image object
15.10  Check Image 'unscaled' recording of an Image object
15.11  Check Image 'scaled' recording of an Image object
17
Testing web services
17.1  Browser send HTTP GET
17.2  GET response
18
Data-driven testing
18.1  A simple data-driven test
18.2  'Data table' example
18.3  Run-log of a data-driven test
18.4  Data-driven test with nested loops
18.5  Second data table example
18.6  Run-log of a data-driven test with nested loops
19
Reports and test documentation
19.1  Example report
20
Test execution
20.1  Dialog to re-run test-cases
21
Distributed test development
21.1  Result of analyzing references
3.0+
22
Automated Creation of Basic Procedures
22.1  Recorded procedures
22.2  The Procedure Builder definition file
3.0+
23
Interaction with Test Management Tools
23.1  Integration with ALM - QualityCenter
23.2  QF-Test VAPI-XP-TEST test-case in HP ALM - QualityCenter
23.3  In Test plan create new Test-set
23.4  Create new test of type VAPI-XP-TEST
23.5  HP VAPI-XP Wizard
23.6  Test details
23.7  Copy template content to script text area
23.8  New test-set in Test lab section
23.9  Add test to execution grid
23.10  Run the test
23.11  Test result
23.12  Uploaded run-log
23.13  Script debug run
23.14  QF-Test run-log in QMetry
24
Integration with Development Tools
24.1  Eclipse plugin configuration - tab 'Main'
24.2  Eclipse plugin configuration - Tab 'Settings'
24.3  Eclipse plugin configuration - Tab 'Initial Settings'
24.4  Jenkins after start-up.
24.5  Install QF-Test Plugin.
24.6  Set custom workspace.
24.7  Add build step to run QF-Test
24.8  Configure build step advanced options.
24.9  Configure post build steps.
25
Keyword-driven testing with QF-Test
25.1  Excel file business-related keywords
25.2  Test-suite business-related keywords
25.3  Procedure fillDialog
25.4  Excel file of generic components
25.5  Test-suite for generic components
25.6  Test-suite Behavior-driven testing technical
25.7  Test-suite Behavior-driven testing from business perspective
25.8  Excel file as scenario file
25.9  Test-suite scenario file
26
Performing GUI-based load tests
26.1  Load testing scenario
26.2  Overview load testing project
26.3  Sample test-suite daemonController_twoPhases.qft
26.4  Call of rc.syncThreads in demo test-suite
3.0+
27
Executing Manual Tests in QF-Test
27.1  Example for a ManualStepDialog
28
Controlling and testing native Windows applications
28.1  UI Automation procedures in the standard library
28.2  The WPF demo application
28.3  Help menu
28.4  Failed Image check in the run-log
32
Organizing test-suites
32.1  Structure of multiple test-suites
32.2  Including test-suites of level 1
32.3  Structure of different test-suites with roles
34
How to achieve robust component recognition
34.1  Default configuration for component recording
34.2  Default configuration for component recognition
34.3  'Name overrides everything' configuration for component recording
34.4  'Name overrides everything' configuration for component recognition
34.5  Using a regular expression in the 'Feature' attribute
34.6  Option to configure recording of system classes only
37
Options
37.1  Options tree
37.2  General options
37.3  Projects
37.4  Editing
37.5  Bookmarks
37.6  External tools options
37.7  Backup file options
37.8  Library path option
37.9  License options
37.10  Update options
37.11  Recording options
37.12  Options for events to record
37.13  Options for events to pack
37.14  Dragging to a sub-menu
37.15  Options for recording components
37.16  Popup menu for recording components
37.17  Options for recording sub-items
37.18  Procedure Builder options
37.19  Replay options
37.20  Client options
37.21  Terminal options
37.22  Event handling options
37.23  Component recognition options
37.24  Delay options
37.25  Timeout options
37.26  Options for replay backward compatibility
37.27  Web options
37.28  Options for HTTP Requests
37.29  Options for web backward compatibility
37.30  SWT options
37.31  Debugger options
37.32  General run-log options
37.33  Options determining run-log content
37.34  Options for mapping between directories with test-suites
37.35  Variable options
38
Elements of a test-suite
38.1  'Test-suite' attributes
38.2  'Test-case' attributes
38.3  'Test-set' attributes
38.4  'Test call' Attributes
38.5  'Sequence' attributes
38.6  'Test-step' attributes
38.7  'Sequence with time limit' attributes
38.8  'Extras' attributes
38.9  'Dependency' attributes
38.10  'Dependency reference' attributes
38.11  'Setup' attributes
38.12  'Cleanup' attributes
38.13  'Error handler' attributes
38.14  'Data driver' attributes
38.15  'Data table' attributes
38.16  'Database' attributes
38.17  'Excel data file' attributes
38.18  'CSV data file' attributes
38.19  'Data loop' attributes
38.20  'Procedure' Attributes
38.21  'Procedure call' Attributes
38.22  'Return' Attributes
38.23  'Package' Attributes
38.24  'Procedures' Attributes
38.25  'Loop' attributes
38.26  'While' attributes
38.27  'Break' attributes
38.28  'If' attributes
38.29  'Elseif' attributes
38.30  'Else' attributes
38.31  'Try' attributes
38.32  'Catch' attributes
38.33  'Finally' attributes
38.34  'Throw' attributes
38.35  'Rethrow' attributes
38.36  'Server script' attributes
38.37  'SUT script' attributes
38.38  'Start Java SUT client' attributes
38.39  'Start SUT client' attributes
38.40  'Start process' attributes
38.41  'Start web engine' attributes
38.42  'Open browser window' attributes
38.43  'Execute shell command' attributes
38.44  'Start PDF client' attributes
38.45  'Wait for client to connect' attributes
38.46  'Stop client' attributes
38.47  'Wait for process to terminate' attributes
38.48  'Mouse event' attributes
38.49  'Key event' attributes
38.50  'Text input' attributes
38.51  'Window event' attributes
38.52  'Component event' attributes
38.53  'Selection' attributes
38.54  'File selection' attributes
38.55  'Check text' attributes
38.56  'Boolean check' attributes
38.57  'Check items' attributes
38.58  'Check selectable items' attributes
38.59  'Check image' attributes
38.60  'Check geometry' attributes
38.61  'Fetch text' attributes
38.62  'Fetch index' attributes
38.63  'Fetch geometry' attributes
38.64  'Set variable' attributes
38.65  'Wait for component to appear' attributes
38.66  'Wait for document to load' attributes
38.67  'Wait for download to finish' attributes
38.68  'Load resources' attributes
38.69  'Load properties' attributes
38.70  'Unit test' server attributes
38.71  'Unit test' client attributes
38.72  'Server HTTP request' Attribute
38.73  'Browser HTTP request' Attribute
38.74  'Window' attributes
38.75  'Web page' attributes
38.76  'Component' attributes
38.77  'Item' attributes
38.78  'Window group' attributes
38.79  'Component group' attributes
38.80  'Windows and components' attributes
38.81  'Test' attributes
42
Running an application from QF-Test
42.1  Starting the SUT from a script or executable
42.2  Starting the SUT through Java WebStart
42.3  Starting the SUT as an applet in a web browser
42.4  Starting the SUT from a jar archive
42.5  Starting the SUT via the main class
42.6  Starting a web-based SUT in a browser
42.7  Opening a PDF Document
43
JDK and SWT instrumentation
43.1  Dialog for JDK instrumentation
46
Special features for web applications
46.1  HTML code inspection in Firefox
46.2  Reduction of complexity for WebCarConfigurator demo
46.3  WebCarConfigurator
46.4  Simplification due to simple class mapping
46.5  Recording of '-5%' button in WebCarConfigurator
46.6  Recording with genericClasses in WebCarConfigurator
46.7  Simplification due to advanced class mapping
46.8  Recording of SPAN textfields
46.9  Recording TextFields in WebCarConfigurator
46.10  Simplification for complex components
46.11  Recording of table in WebCarConfigurator
46.12  Recording of resolved table item in WebCarConfigurator
46.13  Simplification of WebCarConfigurator demo
3.3+
52
Details about the algorithm for image comparison
52.1  Original image
52.2  Classic image check
52.3  Pixel-based identity check
52.4  Pixel-based similarity check
52.5  Block-based identity check
52.6  Block-based similarity check
52.7  Histogram
52.8  Analysis with Discrete Cosine Transformation
52.9  Block-based analysis with Discrete Cosine Transformation
52.10  Bilinear Filter
52.11  Image-in-image search: Expected image
52.12  Image-in-image search: Got image
3.2+
53
Result lists
53.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