|The information below concerns legacy mobile tests that work with mobile devices connected to the local computer. In new cloud-compatible mobile tests, the test engine recognizes controls by their accessibility info.|
TestComplete can recognize Xamarin.Forms NavigationPage controls in Xamarin.Forms mobile applications. It provides special properties and methods that let you retrieve the controls data and simulate user actions on the controls (see below).
In order for TestComplete to be able to work with Xamarin.Forms NavigationPage controls, the following requirements must be met:
You must have an active license for the TestComplete Mobile module.
Your tested Xamarin.Forms application and the device must be prepared for testing as it is described in the topics of the Preparing Xamarin.Forms Applications for Testing (Legacy) section.
The control’s class name must be specified in the Xamarin.Forms Controls | NavigationPage group of your project’s Object Mapping options. By default, this group contains the following item:
To command TestComplete to recognize instances of the specified class’s descendants as Xamarin.Forms NavigationPage controls, select the Derived Classes check box next to the control’s class name.
You can also command the test engine to recognize custom controls as Xamarin.Forms NavigationPage controls. See below for information about this.
Support for the Xamarin.Forms controls is implemented by the Mobile Support plugin, and the Android Support or iOS Support plugin (depending on whether you are testing on Android or iOS). All these plugins are installed and enabled automatically as part of the TestComplete Mobile module.
If you experience issues when working with Xamarin.Forms controls, select File > Install Extensions from the TestComplete main menu and check whether the plugins are active. (You can find the plugins in the Mobile group.) If some plugin is not available, run the TestComplete installation in the Repair mode.
Recognizing Custom Controls
To command TestComplete to recognize your custom controls as Xamarin.Forms NavigationPage controls:
Open your project’s Object Mapping options.
Add the control’s class name to the Xamarin.Forms Controls | NavigationPage group.
If you do not know the control’s name, you can ask the control’s developers, or you can view the control’s
ObjectClassNameproperty in the Object Browser panel. As an alternative, you can click Add From Screen and select your custom control on screen. TestComplete will retrieve the control’s class name and add it to the selected mapping group automatically. For detailed information, see Object Mapping.
Once the control is mapped, it gets all the properties, methods and actions specific to the Xamarin.Forms NavigationPage control.
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.
When testing Xamarin.Forms NavigationPage controls, you can use properties and methods specific to these controls, as well as properties and methods that TestComplete applies to tested objects, onscreen objects and window objects. For the full list of available properties and methods, see the following topics: