TestComplete supports testing of various Qt controls. You can also modify project properties so that TestComplete recognizes your custom Qt controls. The sections below describe how you can test Qt controls in detail.
About Supported Qt Controls
TestComplete can work with any Qt control via a graphical user interface. Besides, TestComplete provides extended support for most of Qt controls. It automatically associates them with special scripting test objects that contain supplementary methods and properties for working with the controls, for example, for selecting individual items and retrieving the item text.
Requirements
-
A license for TestComplete Desktop module.
-
The Qt Control Support plugin. It provides access to controls via special program objects. It also enables creating table checkpoints for controls that display data in a tabular form. For the full list of these controls, see About Tables Collection.
This plugin is installed and enabled automatically.
If you experience issues when working with the controls, select File | Install Extensions from the TestComplete main menu to check whether the plugin is active. If the plugin is not available, run the TestComplete installation in the Repair mode.
Supported Component Versions
TestComplete supports Qt controls ver. 5.0 - 5.12 by Digia, Qt. You can also download specific modules that provide support for earlier Qt versions from our web site:
https://support.smartbear.com/downloads/testcomplete/qt-modules/
Supported Controls
Below is the full list of the Qt controls for which TestComplete provides extended support.
Note that TestComplete provides support for the listed controls as well as for their descendants. However, to make this possible, you need to specify the class name of your inherited control in the corresponding group of the project’s Object Mapping options. For more information, see Object Mapping.
Controls | Classes |
---|---|
Push button | QPushButton |
Calendar widget | QCalendarWidget |
Check box | QCheckBox |
Combo box | QComboBox QFontComboBox |
Line edit | QLineEdit |
List widget | QListWidget |
Radio button | QRadioButton |
Scroll bar | QScrollBar |
Slider | QSlider |
Tab widget | QTabWidget |
Menu | QMenu |
Tree widget | QTreeWidget |
Table widget | QTableWidget |
Menu bar | QMenuBar |
Tool button | QToolButton |
Spin box | QSpinBox |
Double spin box | QDoubleSpinBox |
Date-time edit | QDateTimeEdit |
Text edit | QTextEdit |
Recognizing Custom Controls
To command TestComplete to recognize your custom Qt controls, open your project’s Object Mapping options and add the control’s class name to the corresponding subgroup of the Qt Controls group. The subgroup name corresponds to your custom control’s type. Once the control is mapped, it gets all the properties, methods and actions specific to the Qt control of the corresponding type.
If the specified custom control does not fit the control’s type, then it may not properly respond to commands that TestComplete sends, so recording or playing back user actions over the tested control will cause errors.