TestOptimal Plugins

TestOptimal uses plugin architecture to provide the flexibility for integrating with external test automation framework and tools.

Note that most of the plugins are built on or integrated with external drivers. TestOptimal only supports the integration with these external drivers and not the external drivers.

You may also develop your own plugin to extend functionality of TestOptimal or integrate with your proprietary framework/system.

Below are the plugins available:

Plugin javadoc is available HERE.

Plugins must be activated for the model before they can be used through Script Editor.

Agent Plugin

Agent Plugin enables integration with external automation tools and processes through http protocol.

Example remote agent:

Appium Plugin

Appium Plugin is used to test web apps and native apps on mobile devices.


Appium Plugin requires Appium be installed on the computer which the mobile devices will be attached or mobile simulators will be installed.

Additionally, you will need Android Studio/SDK to test Android devices and Apple Xcode to test IOS devices.

MQTT Plugin

MQTT Plugin enables testing of MQTT-based IoT devices.

REST Plugin

REST Plugin enables testing of REST and WebSvc using RestAssured.

Random Plugin

RAND Plugin provides a set of pattern-based random data generation. For example, you can generate random street address, zip code or random number from a random distribution.

Selenium Plugin

Selenium Plugin uses Selenium to perform test automation on your web application with various browsers. The simulated browser (HTMLUNIT) offers much higher performance and more suited for running load testing when you need to simulate hundreds or thousands of users running models simultaneously.

Element Locator

SeqOut Plugin

SeqOut Plugin generates the test sequence from your model script to an HTML webpage, Excel document or text/xml/json files for external automation tools.

Sikuli Plugin

Sikuli Plugin provides a set of mscript functions for interacting with any type of UI Applications. Due to the nature of using image to identify the UI control, the performance will be a little bit slower.

MScript Functions

UI Images

Sikuli uses images to identify UI controls. The images must be png.

Image files must be stored in /uimap/ subfolder within the model folder.

WebDriver Plugin

WebDriver Plugin enables testing with products/services implementing WebDriver wire protocol, more info at WebDriver Documentation.

Below is a few examples of such products/services:

XUIA Plugin

XUIA Plugin provides a set of mscript functions for automation using keyboard and mouse.

The automation is accomplished by sending the real keyboard event and mouse movement to AUT. Due to the nature of this type of automation, you must ensure AUT you are automating has the focus just like as if you are testing manually.

QR Code
QR Code plugins (generated for current page)