Table of contents

Preface
How to use this manual
Table of contents
List of figures
List of tables
I
User manual
1
Installation and startup
1.1System requirements
1.1.1Hard- and Software
1.1.2Supported technologies
1.2Windows Installation
1.2.1Installing via the Windows setup file QF-Test-6.0.4.exe
1.2.2Unpacking the self-extracting archive QF-Test-6.0.4-sfx.exe
1.2.3Completing the installation and configuring Java
1.3Linux/Unix Installation
1.4macOS Installation
1.5The license file
1.6The configuration files
1.7Starting QF-Test
1.8Firewall Security Warning
2
The user interface
2.1The test-suite
2.2Basic editing
2.2.1Navigating the tree
2.2.2Insertion marker
2.2.3Moving nodes
2.2.4Transforming nodes
2.2.5Tables
2.2.6Packing and Unpacking
2.2.7Sorting Nodes
2.3Advanced editing
2.3.1Searching
2.3.2Replacing
2.3.3Complex searches and replace operations
2.3.4Multiple views
2.3.5Hiding toolbar buttons
2.0+
3
Quickstart your application
3.1Setup sequence creation
3.2Executing the setup sequence
3.3In case the client does not connect ...
3.4Program output and the Clients menu
3.5An application started indirectly from an already connected SUT
4
Capture and replay
4.1Recording sequences
4.2Running tests
4.3Recording checks
4.4Recording components
4.5Recording of HTTP requests (GET/POST)
5
Components
5.1Components of a GUI
5.2'Component' nodes versus SmartID
5.2.1Improved readability of tests
5.2.2Test-driven development
5.2.3Keyword-driven testing
5.2.4Stability of recognition
5.2.5Maintainability
5.2.6Performance
5.2.7Combining 'Component' nodes and SmartIDs
5.3How to achieve robust component recognition
5.3.1How to judge robust component recognition
5.3.2Opportunities for optimization
5.4Recognition criteria
5.4.1Class
5.4.2Name
5.4.3Feature
5.4.4Extra features
5.4.5Index
5.4.6Geometry
5.4.7Component hierarchy
5.5'Component' node
5.6SmartID (Preview)
5.6.1Areas of application for SmartIDs
5.6.2SmartID syntax for 'Class name'
5.6.3SmartID syntax for 'Name'
5.6.4SmartID syntax for 'Feature'
5.6.5SmartID syntax for 'Extra features'
5.6.6SmartID with index
5.6.7SmartID syntax for component hierarchies
5.6.8Recording and replaying SmartIDs
5.6.9Component 'QF-Test ID' as SmartID
5.7Scope (Preview)
5.8Generic components
5.9Sub-items: Addressing relative to a parent component
5.9.1Addressing via index
5.9.2Addressing via QPath
5.9.3Addressing via XPath and/or CSS selectors
5.9.4Addressing via 'Items' nodes
5.10Troubleshooting component recognition problems
5.10.1Timing synchronisation
5.10.2Recognition
5.11Component tree maintenance
5.11.1Clean up the component tree
5.11.2Update 'Components'
3.1+5.12 Inspecting components
6
Variables
6.1Variable lookup
6.2Defining variables
6.3Variable example
6.4Fetching data from the GUI
6.5External data and special groups
6.6Expressions
3.0+6.7Immediate and lazy binding
7
Problem analysis and debugging
7.1The run-log
7.1.1Error states
7.1.2Navigating the run-log tree
7.1.3Run-time behavior
7.1.4Accepting values of failed checks as good
3.0+7.1.5Split run-logs
7.1.6Run-log options
3.3+7.1.7Creating a test-suite from the run-log
4.1+7.1.8Merging run-logs
7.2The debugger
7.2.1Entering the debugger
7.2.2The debugger window
7.2.3Debugger commands
7.2.4Manipulating breakpoints
8
Organizing the test-suite
8.1Test-suite structure
8.2'Test-set' and 'Test-case' nodes
2.0+8.2.1 Test management with 'Test-set' and 'Test-case' nodes
8.2.2Concept
8.2.3Variables and special attributes
8.3'Sequence' and 'Test-step' nodes
8.4'Setup' and 'Cleanup' nodes
8.5'Procedures' and 'Packages'
3.1+8.5.1Local 'Procedures' and 'Packages'
3.1+8.5.2Relative 'Procedures'
8.5.3Inserting 'Procedure call' nodes
3.1+8.5.4Parameterizing nodes
3.0+8.5.5Transforming a 'Sequence' into a 'Procedure'
8.6'Dependency' nodes
8.6.1Concept
8.6.2Usage of 'Dependencies'
8.6.3'Dependency' execution and 'Dependency' stack
8.6.4'Characteristic variables'
8.6.5'Forced cleanup'
8.6.6Rolling back 'Dependencies'
8.6.7Error escalation
8.6.8Error handling
8.6.9Name spaces for Dependencies
8.7Documenting test-suites
3.5+
9
Projects
10
The standard library
11
Scripting
11.1General
11.2The run-context rc
11.2.1Logging messages
11.2.2Performing checks
11.2.3Variables
11.2.4Accessing the SUT's GUI components
11.2.5Calling 'Procedures'
3.1+11.2.6Setting options
11.2.7Override components
11.3Fundamentals of the Jython integration
11.3.1Modules
11.3.2Post-mortem debugging of Jython scripts
11.3.3Boolean type
11.3.4Jython strings and character encodings
11.3.5Getting the name of a Java class
11.3.6A complex example
11.4Scripting with Groovy
11.4.1Groovy packages
11.5Scripting with JavaScript
11.5.1JavaScript imports
11.5.2NPM modules
11.5.3Print statements
11.5.4Execution
12
Unit Tests
12.1Java Classes as the Source for the Unit Test
12.2Basics of the Test Scripts
12.2.1Groovy Unit Tests
12.2.2Jython Unit Tests
12.2.3JavaScript Unit-Test
12.3Injections
12.3.1Component-Injections
12.3.2WebDriver-Injections
12.4Unit Tests in Report
13
Web testing
13.1Supported browsers
13.2General approach
13.3Browser connection
13.4Recognition of web components and toolkits
13.5Cross browser tests
13.6Emulation of mobile browsers
13.7Web-Tests in headless mode
13.8Integrating existing Selenium web tests
13.9Selecting the browser installation
5.0+
14
Testing native Windows applications
14.1Getting started
14.2Technical background
14.3Launching/Attaching to an application
14.4Recording
14.5Components
14.6Playback and Patterns
14.7Scripting
14.8Options
14.8.1Windows scaling
14.8.2Visibility
14.8.3Attaching to a window with a given class
14.8.4Child count limitation
14.9(Current) Limitations
14.10Links
6.0+
15
Testing Android applications
15.1Preconditions and known restrictions
15.1.1Preconditions
15.1.2Known restrictions
15.2Emulator or real device
15.3Installing Android Studio, emulator and virtual devices (AVD)
15.3.1Android Studio installation
15.3.2Android Studio virtual device configuration
15.4Connecting to a real Android device
15.5Create a QF-Test setup sequence for Android testing
15.5.1Usage of an Android emulator
15.5.2Usage of a real Android device
15.6Record actions and checks for Android
15.7Android utility procedures
16
Testing PDF documents
16.1PDF Client
16.1.1PDF Client start
16.1.2PDF Client window
16.2PDF events
16.2.1Open a PDF document
16.2.2Switch page
16.3Checks for PDF components
16.3.1'Check text'
16.3.2'Check image'
16.3.3'Check Font'
16.3.4'Check Font size'
16.4PDF component types
16.5PDF component recognition
17
Testing Java desktop applications in a browser with Webswing and JPro
17.1Technical concepts of JiB for Webswing and JPro
18
Testing Electron applications
18.1Starting the Electron Client
18.1.1Electron settings for the quickstart wizard
18.2Electron specific functionality of QF-Test
18.2.1Native Menus
18.2.2Native Dialogs
18.2.3Extended Javascript-API
18.3Technical remarks on testing Electron applications in WebDriver connection mode
19
Testing web services
19.1RESTful web services
19.1.1HTTP standards and web services
19.1.2HTTP request
19.1.3Examples
20
Data-driven testing
20.1Data-driver examples
20.2General use of 'Data drivers'
20.3Examples for 'Data drivers'
20.4Advanced use
21
Reports and test documentation
21.1Reports
21.1.1Report concepts
21.1.2Report contents
21.1.3Creating reports
21.1.4Customizing reports
21.2Testdoc documentation for 'Test-sets' and 'Test-cases'
21.3Pkgdoc documentation for 'Packages', 'Procedures' and 'Dependencies'
22
Test execution
22.1Test execution in batch mode
22.1.1Command line usage
22.1.2Windows batch script
3.0+22.1.3Groovy
22.2Executing tests in daemon mode
22.2.1Launching the daemon
3.0+22.2.2Controlling a daemon from QF-Test's command line
22.2.3Controlling a daemon with the daemon API
4.1+22.3Re-execution of nodes (Re-run)
22.3.1Triggering re-run from a run-log
22.3.2Re-running failing nodes immediately
23
Distributed test development
23.1Referencing nodes in another test-suite
23.2Managing 'Components'
23.3Merging test-suites
23.3.1Importing Components
3.3+23.3.2 Importing Procedures and Testcases
23.4Strategies for distributed development
3.1+23.5Static validation of test-suites
23.5.1Avoiding invalid references
4.0.3+23.5.2Unused procedures
3.0+
24
Automated Creation of Basic Procedures
24.1Introduction
24.2How to use the Procedure Builder
24.3Configuration of the Procedure Builder
24.3.1The Procedure Builder definition file
3.0+
25
Interaction with Test Management Tools
25.1HP ALM - Quality Center
25.1.1Introduction
25.1.2Step-by-step integration guide
25.1.3Troubleshooting
25.2Imbus TestBench
25.2.1Introduction
25.2.2Creating QF-Test template from interactions
25.2.3Importing test-execution results
25.3QMetry
25.3.1Introduction
25.3.2Sample Configuration
25.4Klaros
25.4.1Introduction
25.4.2Importing QF-Test results into Klaros
25.5TestLink
25.5.1Introduction
25.5.2Generating template test-suites for QF-Test from test-cases
25.5.3Execution of test-cases
25.5.4Importing QF-Test results into TestLink
26
Integration with Development Tools
26.1Eclipse
26.1.1Installation
26.1.2Configuration of the test nodes
26.2Ant
26.3Maven
3.3+26.4Jenkins/Hudson
26.4.1Install and start Jenkins
26.4.2Requirements for GUI tests
26.4.3Install QF-Test Plugin
27
Integration with Robot Framework (Preview)
27.1Introduction
27.2Prerequisites and installation
27.3Getting started
27.4Using the library
27.5Creating your own keywords
28
Keyword-driven testing with QF-Test
28.1Introduction
28.2Simple Keyword-driven testing with QF-Test
28.2.1Business-related Procedures
28.2.2Atomic component-oriented procedures
28.3Keyword-driven testing using dynamic or generic components
28.4Behavior-driven testing (BDT)
28.4.1Behavior-Driven Testing (BDT) from technical perspective
28.4.2Behavior-Driven Testing (BDT) from business perspective
28.5Scenario files
28.6Custom test-case description
28.7Adapting to your software
29
Usage of QF-Test in Docker Environments
29.1What is Docker?
29.2QF-Test Docker Images
30
Performing GUI-based load tests
30.1Background and comparison with other techniques
30.2Load testing with QF-Test
30.2.1Provision of test-systems
30.2.2Conception of the test-run
30.2.3Preparing test-systems prior to the test-run
30.2.4Test execution
30.2.5Evaluating results
30.3Hints on test execution
30.3.1Synchronization
30.3.2Measuring end-to-end response times
30.4Troubleshooting
30.5Web load testing with headless browsers
3.0+
31
Executing Manual Tests in QF-Test
31.1Introduction
31.2Step-by-step Guide
31.3Structure of the Excel file
31.4The ManualTestRunner test-suite
31.5Results
II
Best Practices
32
Introduction
33
How to start a testing project
33.1Infrastructure and testing environment
33.2Location of files
33.2.1Network installation
33.3Component Recognition
34
Organizing test-suites
34.1Organizing tests
34.2Modularization
34.3Parameterization
34.4Working in multiple test-suites
34.5Roles and responsibilities
34.6Managing components at different levels
34.7Reverse includes
35
Efficient working techniques
3.5+35.1Using QF-Test projects
35.2Creating test-suites from scratch
35.3The standard library qfs.qft
35.4Component storage
35.5Extending test-suites
35.6Working in the script editor
36
Hints on setting up test-systems
36.1Using the task scheduler
36.2Remote access to Windows systems
36.3Automated logon on Windows systems
36.4Test execution on Unix
37
Test execution
37.1Dependencies
37.2Timeout vs. delay
37.3What to do if the run-log contains an error
III
Reference manual
38
Options
38.1General options
3.5+38.1.1Projects
38.1.2Editing
38.1.3Bookmarks
38.1.4External tools
38.1.5Backup files
38.1.6Library path
38.1.7License
38.1.8Updates
38.2Recording options
38.2.1Events to record
38.2.2Events to pack
38.2.3Components
38.2.4Recording sub-items
38.2.5Recording procedures
38.3Replay options
38.3.1Client options
38.3.2Terminal options
38.3.3Event handling
38.3.4Component recognition
38.3.5Delays
38.3.6Timeouts
38.3.7Backward compatibility
6.0+38.4Android
6.0+38.4.1Recording Window
38.5Web options
38.5.1HTTP Requests
38.5.2Backward compatibility
38.6SWT options
38.7Debugger options
38.8Run-log options
38.8.1General run-log options
38.8.2Options for splitting run-logs
38.8.3Options determining run-log content
4.0+38.8.4Options for mapping between directories with test-suites
38.9Variables
38.10Runtime only
39
Elements of a test-suite
39.1The test-suite and its structure
39.1.1'Test-suite'
39.2Test and Sequence nodes
39.2.1'Test-case'
39.2.2'Test-set'
39.2.3'Test call'
39.2.4'Sequence'
39.2.5'Test-step'
39.2.6'Sequence with time limit'
39.2.7'Extras'
39.3Dependencies
39.3.1'Dependency'
39.3.2'Dependency reference'
39.3.3'Setup'
39.3.4'Cleanup'
39.3.5'Error handler'
39.4Data driver
39.4.1'Data driver'
39.4.2'Data table'
39.4.3'Database'
39.4.4'Excel data file'
39.4.5'CSV data file'
39.4.6'Data loop'
39.5Procedures
39.5.1'Procedure'
39.5.2'Procedure call'
39.5.3'Return'
39.5.4'Package'
39.5.5'Procedures'
39.6Control structures
39.6.1'Loop'
39.6.2'While'
39.6.3'Break'
39.6.4'If'
39.6.5'Elseif'
39.6.6'Else'
39.6.7'Try'
39.6.8'Catch'
39.6.9'Finally'
39.6.10'Throw'
39.6.11'Rethrow'
39.6.12'Server script'
39.6.13'SUT script'
39.7Processes
39.7.1'Start Java SUT client'
39.7.2'Start SUT client'
39.7.3'Start process'
39.7.4'Start web engine'
39.7.5'Open browser window'
39.7.6'Execute shell command'
39.7.7'Start PDF client'
39.7.8'Start windows application'
39.7.9'Attach to windows application'
39.7.10'Launch Android emulator'
39.7.11'Connect to Android device'
39.7.12'Launch Android app'
39.7.13'Wait for client to connect'
39.7.14'Wait for Android device'
39.7.15'Stop client'
39.7.16'Wait for process to terminate'
39.8Events
39.8.1'Mouse event'
39.8.2'Key event'
39.8.3'Text input'
39.8.4'Window event'
39.8.5'Component event'
39.8.6'Selection'
39.8.7'File selection'
39.9Checks
39.9.1'Check text'
39.9.2'Boolean check'
39.9.3'Check items'
39.9.4'Check selectable items'
39.9.5'Check image'
39.9.6'Check geometry'
39.10Queries
39.10.1'Fetch text'
39.10.2'Fetch index'
39.10.3'Fetch geometry'
39.11Miscellaneous
39.11.1'Comment'
39.11.2'Set variable'
39.11.3'Wait for component to appear'
39.11.4'Wait for document to load'
39.11.5'Wait for download to finish'
39.11.6'Load resources'
39.11.7'Load properties'
39.11.8'Unit test'
39.12HTTP Requests
39.12.1'Server HTTP request'
39.12.2'Browser HTTP request'
39.13Windows, Components and Items
39.13.1'Window'
39.13.2'Web page'
39.13.3'Component'
39.13.4'Item'
39.13.5'Window group'
39.13.6'Component group'
39.13.7'Windows and components'
39.14Deprecated nodes
39.14.1'Test'
40
Exceptions
IV
Technical reference
41
Command line arguments and exit codes
41.1Call syntax
41.2Command line arguments
41.2.1Arguments for the starter script
41.2.2Arguments for the Java VM
41.2.3Arguments for QF-Test
41.2.4Placeholders in the filename parameter for run-log and report
41.3Exit codes for QF-Test
42
GUI engines
43
Running an application from QF-Test
43.1Various methods to start the SUT
43.1.1A standalone script or executable file
43.1.2An application launched through Java WebStart
43.1.3An applet in a web browser
43.1.4An application started with java -jar <archive>
43.1.5 An application started with java -classpath <classpath> <class>
43.1.6 A web application in a browser
43.1.7Opening a PDF Document
44
JRE and SWT instrumentation
44.1JRE deinstrumentation
44.2SWT instrumentation
44.2.1Preparation for manual SWT instrumentation
44.2.2Manual SWT instrumentation for eclipse based applications
44.2.3Manual instrumentation for standalone SWT applications
45
Technical information about components
45.1Weighting of recognition features for recorded components
45.2Generating the component 'QF-Test ID'
45.3SmartIDs - general syntax
45.4SmartIDs - special characters
45.5SmartID Options
45.5.1SmartID Option OPT_SMARTID_SMART_COMPONENT_CLASSES
45.6Android - list of trivial component identifiers
46
Technical details about miscellaneous issues
46.1Drag&Drop
46.2Timing
46.3Regular expressions
46.4Line breaks under Unix and Windows
46.5Quoting and escaping special characters
46.6Include file resolution
47
Scripting (Jython, Groovy and JavaScript)
47.1Module load-path
47.2The plugin directory
47.3Initialization (Jython)
47.4Namespace environment for script execution (Jython)
47.5Run-context API
47.6The qf module
3.0+47.7Image API
47.7.1The ImageWrapper class
47.8Exception handling
47.9Debugging scripts (Jython)
48
Web
48.1Improving component recognition with a CustomWebResolver
48.1.1General configuration
48.1.2Analyzing a web page
48.1.3The procedure installCustomWebResolver
48.1.4installCustomWebResolver - Samples
48.1.5Mapping of Tables and TreeTables
48.1.6Mapping of Trees
48.1.7Mapping of Lists
48.1.8Mapping of Comboboxes
48.1.9Mapping of TabPanels and Accordions
48.1.10Example for WebCarConfigurator
48.2Special support for various web frameworks
48.2.1AJAX resolver concepts
48.2.2Setting unique IDs
48.3Browser connection mode
48.3.1QF-Driver connection mode
5.3+48.3.2CDP-Driver connection mode
48.3.3WebDriver in general
48.3.4Known limitations of the WebDriver mode
48.4Accessing hidden fields on a web page
48.5WebDriver with Safari
49
Controlling native Windows applications via the UIAuto module - without the QF-Test win engine
49.1Proceeding
49.1.1Starting the application
49.1.2Listing the GUI elements of a window
49.1.3Information on single GUI elements
49.1.4Identifiers for GUI elements
49.1.5Actions on GUI elements
49.2Example
49.2.1Starting the application
49.2.2GUI element information
50
Controlling and testing native MacOS applications
50.1Proceeding
50.1.1Starting the application
50.1.2Listing the GUI elements of a window
50.1.3Information on single GUI elements
50.1.4Identifiers for GUI elements
50.1.5Actions on GUI elements
51
Extension APIs
51.1The resolvers module
51.1.1Usage
51.1.2Implementation
51.1.3addResolver
51.1.4removeResolver
51.1.5listNames
3.1+51.1.6 The NameResolver Interface
4.0+51.1.7 The GenericClassNameResolver Interface
3.1+51.1.8 The ClassNameResolver Interface
3.1+51.1.9 The FeatureResolver Interface
51.1.10The ExtraFeatureResolver Interface
3.1+51.1.11 The ItemNameResolver Interface
3.1+51.1.12 The ItemValueResolver Interface
51.1.13The TreeTableResolver Interface
51.1.14The InterestingParentResolver Interface
4.1+51.1.15 The TooltipResolver Interface
51.1.16The IdResolver interface
4.1+51.1.17 The EnabledResolver Interface
4.1+51.1.18 The VisibilityResolver Interface
4.1+51.1.19 The MainTextResolver Interface
4.1+51.1.20 The BusyPaneResolver Interfaces
4.1+51.1.21 The GlassPaneResolver Interfaces
4.1+51.1.22 The EventSynchronizer Interface
4.1+51.1.23 The BusyApplicationDetector Interface
51.1.24Matcher
51.1.25External Implementation
51.2The webResolvers module
51.2.1General Information
51.2.2addResolver
51.2.3removeResolver
51.2.4listNames
51.2.5Examples
51.3The ResolverRegistry
3.1+51.4 Implementing custom item types with the ItemResolver interface
51.4.1ItemResolver concepts
51.4.2The ItemResolver interface
51.4.3The class SubItemIndex
51.4.4The ItemRegistry
51.4.5Default item representations
3.1+51.5 Implementing custom checks with the Checker interface
51.5.1The Checker interface
51.5.2The class Pair
51.5.3 The CheckType interface and its implementation DefaultCheckType
51.5.4The class CheckDataType
51.5.5The class CheckData and its subclasses
51.5.6The CheckerRegistry
51.5.7Custom checker example
3.2+51.6 Working with the Eclipse Graphical Editing Framework (GEF)
51.6.1Recording GEF items
51.6.2Implementing a GEF ItemNameResolver2
51.6.3Implementing a GEF ItemValueResolver2
3.1+51.7Test run listeners
51.7.1The TestRunListener interface
51.7.2The class TestRunEvent
51.7.3The class TestSuiteNode
4.0.3+51.8ResetListener
51.9DOM processors
51.9.1The DOMProcessor interface
51.9.2The DOMProcessorRegistry
51.9.3Error handling
3.0+51.10Image API extensions
51.10.1The ImageRep class
51.10.2The ImageComparator interface
51.11Pseudo DOM API
51.11.1The abstract Node class
51.11.2The DocumentNode class
51.11.3The FrameNode class
51.11.4The DomNode class
51.11.5The DialogNode class
4.1+51.12WebDriver SUT API
51.12.1The WebDriverConnection class
5.0+51.13Windows Control API
51.13.1The WinControl class
52
Daemon mode
52.1Daemon concepts
52.2Daemon API
52.2.1The DaemonLocator
52.2.2The Daemon
52.2.3The TestRunDaemon
52.2.4The DaemonRunContext
3.1+52.2.5The DaemonTestRunListener
3.5+52.3Daemon security considerations
52.3.1Creating your own keystore
52.3.2Specifying the keystore
52.3.3Specifying the keystore on the client side
53
The Procedure Builder definition file
53.1Placeholders
4.1.3+53.1.1Fallback values for placeholders
53.2Conditions for Package and Procedure Definition
53.3Interpretation of the Component Hierarchy
3.4+53.4Details about the @CONDITION tag
54
The ManualStepDialog
54.1The ManualStepDialog API
3.1+
55
Details about transforming nodes
55.1Introduction
55.2Transformation with type changes
55.3Additional transformations below the 'Extras' node
55.3.1Transformations without side-effects
55.3.2Transformations with side-effects
3.3+
56
Details about the algorithm for image comparison
56.1Introduction
56.2Description of algorithms
56.2.1Classic image check
56.2.2Pixel-based identity check
56.2.3Pixel-based similarity check
56.2.4Block-based identity check
56.2.5Block-based similarity check
56.2.6Histogram check
56.2.7Analysis with Discrete Cosine Transformation
56.2.8Block-based analysis with Discrete Cosine Transformation
56.2.9Bilinear Filter
56.3Description of special functions
56.3.1Image-in-image search
3.2+
57
Result lists
57.1Introduction
57.2Specific list actions
57.2.1All types of lists
57.2.2Replacing
57.2.3Error list
3.5+57.3Exporting and loading results
4.0+
58
Generic classes
58.1Overview generic classes
58.2Properties of generic classes
58.2.1Accordion
58.2.2BusyPane
58.2.3Button
58.2.4Calendar
58.2.5ColorPicker
58.2.6CheckBox
58.2.7Closer
58.2.8ComboBox
58.2.9Divider
58.2.10Expander
58.2.11FileChooser
58.2.12Graphics
58.2.13Icon
58.2.14Indicator
58.2.15Item
58.2.16Label
58.2.17Link
58.2.18List
58.2.19LoadingComponent
58.2.20Maximizer
58.2.21Menu
58.2.22MenuItem
58.2.23Minimizer
58.2.24Popup
58.2.25RadioButton
58.2.26Restore
58.2.27Panel
58.2.28ProgressBar
58.2.29ScrollBar
58.2.30Separator
58.2.31Sizer
58.2.32Slider
58.2.33Spacer
58.2.34Spinner
58.2.35SplitPanel
58.2.36Table
58.2.37TableCell
58.2.38TableFooter
58.2.39TableHeader
58.2.40TableHeaderCell
58.2.41TabPanel
58.2.42TableRow
58.2.43Text
58.2.44TextArea
58.2.45TextField
58.2.46Thumb
58.2.47ToggleButton
58.2.48ToolBar
58.2.49ToolBarItem
58.2.50ToolTip
58.2.51Tree
58.2.52TreeNode
58.2.53TreeTable
58.2.54Window
59
Doctags
59.1Doctags for reporting and documentation
4.2+59.1.1@noreport Doctag
59.2Doctags for Robot Framework
59.3Doctags for test execution
59.4Doctags for Editing
59.5Doctags influencing the procedure builder
A
FAQ - Frequently Asked Questions
B
Release notes
B.1QF-Test version 6.0
B.1.1Version 6.0.4 - November 29, 2022
B.1.2Version 6.0.3 - September 6, 2022
B.1.3Version 6.0.2 - July 20, 2022
B.1.4Version 6.0.1 - June 9, 2022
B.1.5Changes that can affect test execution
B.1.6Version 6.0.0 - May 17, 2022
B.2QF-Test Version 5.4
B.2.1Version 5.4.3 - March 11, 2022
B.2.2Version 5.4.2 - February 18, 2022
B.2.3Version 5.4.1 - January 20, 2022
B.2.4Changes that can affect test execution
B.2.5Version 5.4.0 - December 15, 2021
B.3QF-Test Version 5.3
B.3.1Version 5.3.4 - September 30, 2021
B.3.2Version 5.3.3 - September 14, 2021
B.3.3Version 5.3.2 - July 21, 2021
B.3.4Version 5.3.1 - June 15, 2021
B.3.5Changes that can affect test execution
B.3.6Version 5.3.0 - May 20, 2021
B.4QF-Test version 5.2
B.4.1Version 5.2.3 - March 9, 2021
B.4.2Version 5.2.2 - February 12, 2021
B.4.3Version 5.2.1 - December 3, 2020
B.4.4Changes that can affect test execution
B.4.5Version 5.2.0 - November 10, 2020
B.5 QF-Test version 5.1
B.5.1 Version 5.1.2 - September 15, 2020
B.5.2 Version 5.1.1 - August 26, 2020
B.5.3Changes that can affect test execution
B.5.4 Version 5.1.0 - July 8, 2020
B.6 QF-Test version 5.0
B.6.1 Version 5.0.3 - June 17, 2020
B.6.2 Version 5.0.2 - May 5, 2020
B.6.3 Version 5.0.1 - March 2, 2020
B.6.4Main new features in version 5
B.6.5 Version 5.0.0 - February 6, 2020
B.7QF-Test version 4
B.7.1QF-Test version 4.7
B.7.2QF-Test version 4.6
B.7.3QF-Test version 4.5
B.7.4QF-Test version 4.4
B.7.5QF-Test version 4.3
B.7.6QF-Test version 4.2
B.7.7QF-Test version 4.1
B.7.8QF-Test version 4.0
B.8QF-Test version 3
B.8.1Version 3.5.7 - July 22, 2014
B.8.2Version 3.5.6 - April 29, 2014
B.8.3Version 3.5.5 - February 25, 2014
B.8.4Version 3.5.4 - December 11, 2013
B.8.5Version 3.5.3 - September 17, 2013
B.8.6Version 3.5.2 - July 2, 2013
B.8.7Version 3.5.1 - May 15, 2013
B.8.8Main new features in version 3.5
B.8.9Version 3.5.0 - March 20, 2013
B.8.10Version 3.5M3 - January 8, 2013
B.8.11Version 3.5M2 - November 16, 2012
B.8.12Version 3.5M1 - October 29, 2012
B.8.13Version 3.4.14 - March 20, 2013
B.8.14Version 3.4.13 - January 8, 2013
B.8.15Version 3.4.12 - November 16, 2012
B.8.16Version 3.4.11 - October 4, 2012
B.8.17Version 3.4.10 - August 7, 2012
B.8.18Version 3.4.9 - June 29, 2012
B.8.19Version 3.4.8 - June 5, 2012
B.8.20Version 3.4.7 - April 24, 2012
B.8.21Version 3.4.6 - March 27, 2012
B.8.22Version 3.4.5 - March 12, 2012
B.8.23Version 3.4.4 - January 30, 2012
B.8.24Version 3.4.3 - October 27, 2011
B.8.25Version 3.4.2 - September 15, 2011
B.8.26Version 3.4.1 - July 15, 2011
B.8.27Main new features in version 3.4
B.8.28Version 3.4.0 - May 26, 2011
B.8.29Version 3.4M2 - March 10, 2011
B.8.30Version 3.4M1 - February 3, 2011
B.8.31Version 3.3.0 - November 30, 2010
B.8.32Version 3.2.2 - July 15, 2010
B.8.33Version 3.2.1 - May 11, 2010
B.8.34New features in QF-Test version 3.2
B.8.35Version 3.2.0 - March 25, 2010
B.8.36Version 3.1.4 - February 9, 2010
B.8.37Version 3.1.3 - December 1, 2009
B.8.38Version 3.1.2 - October 15, 2009
B.8.39Version 3.1.1 - July 28, 2009
B.8.40Version 3.1.0 - May 19, 2009
B.8.41Version 3.0.2 - March 27, 2009
B.8.42Version 3.0.1 - January 23, 2009
B.8.43New features in QF-Test version 3 - December 5, 2008
C
Keyboard shortcuts
C.1Navigation and editing
C.2Record and replay functions
C.3Keyboard helper
D
Glossary
E
Privacy - Processing of personal and other data
E.1Server data for version query
E.2Sending support requests from within QF-Test
E.3Request Data on WebDriver Download
E.4Client data in QF-Test log files
F
Third party software