TestComplete supports testing of various JavaFX controls. You can also modify project properties so that TestComplete recognizes your custom JavaFX controls. The sections below describe how you can test JavaFX controls in detail.
About Supported JavaFX Controls
TestComplete can work with any JavaFX control via a graphical user interface. Besides, TestComplete provides extended support for most of JavaFX 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 JavaFX 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 Classes
Below is the full list of the JavaFX 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 | Library | Classes |
---|---|---|
Accordion | JavaFX SDK ver. 2.2.7 - 2.2.45, 8, 9, 10 | javafx.scene.control.Accordion |
Button | JavaFX SDK ver. 2.2.7 - 2.2.45, 8, 9, 10 | javafx.scene.control.Button |
Check box | JavaFX SDK ver. 2.2.7 - 2.2.45, 8, 9, 10 | javafx.scene.control.CheckBox |
Choice box | JavaFX SDK ver. 2.2.7 - 2.2.45, 8, 9, 10 | javafx.scene.control.ChoiceBox |
Color picker | JavaFX SDK ver. 2.2.7 - 2.2.45, 8, 9, 10 | javafx.scene.control.ColorPicker |
Combo box | JavaFX SDK ver. 2.2.7 - 2.2.45, 8, 9, 10 | javafx.scene.control.ComboBox |
Hyper link | JavaFX SDK ver. 2.2.7 - 2.2.45, 8, 9, 10 | javafx.scene.control.Hyperlink |
List view | JavaFX SDK ver. 2.2.7 - 2.2.45, 8, 9, 10 | javafx.scene.control.ListView |
Menu bar | JavaFX SDK ver. 2.2.7 - 2.2.45, 8, 9, 10 | javafx.scene.control.MenuBar |
Menu button | JavaFX SDK ver. 2.2.7 - 2.2.45, 8, 9, 10 | javafx.scene.control.MenuButton |
Radio button | JavaFX SDK ver. 2.2.7 - 2.2.45, 8, 9, 10 | javafx.scene.control.RadioButton |
Scroll bar | JavaFX SDK ver. 2.2.7 - 2.2.45, 8, 9, 10 | javafx.scene.control.ScrollBar |
Scroll pane | JavaFX SDK ver. 2.2.7 - 2.2.45, 8, 9, 10 | javafx.scene.control.ScrollPane |
Slider | JavaFX SDK ver. 2.2.7 - 2.2.45, 8, 9, 10 | javafx.scene.control.Slider |
Tab pane | JavaFX SDK ver. 2.2.7 - 2.2.45, 8, 9, 10 | javafx.scene.control.TabPane |
Table view | JavaFX SDK ver. 2.2.7 - 2.2.45, 8, 9, 10 | javafx.scene.control.TableView |
Text area | JavaFX SDK ver. 2.2.7 - 2.2.45, 8, 9, 10 | javafx.scene.control.TextArea |
Text field | JavaFX SDK ver. 2.2.7 - 2.2.45, 8, 9, 10 | javafx.scene.control.TextField |
Toggle button | JavaFX SDK ver. 2.2.7 - 2.2.45, 8, 9, 10 | javafx.scene.control.ToggleButton |
Tree view | JavaFX SDK ver. 2.2.7 - 2.2.45, 8, 9, 10 | javafx.scene.control.TreeView |
Recognizing Custom Controls
To command TestComplete to recognize your custom JavaFX controls, open your project’s Object Mapping options and add the control’s class name to the corresponding subgroup of the JavaFX 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 JavaFX 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.