This section describes various ways to integrate MBT with other testing tools.
To integrate with UFT One, install and configure the Application Automation Tools plugin. This enables MBT to integrate with UFT One via Jenkins. These steps are described in detail in the ALM Octane Help Center, in the section Set up UFT One integration. Make sure to follow the instructions on integrating via Jenkins.
After setting up the plugin, configure Model-Based Testing as described in the section Configure MBT.
AI Codeless Testing integration
If you have AI Codeless Testing installed on the same machine as Model-Based Testing, you can integrate the two applications.
In this workflow, you use AI Codeless Testing to write test scripts for the units defined in Model-Based Testing. The test script is saved locally in Model-Based Testing and not in Git. You then run the tests from Model-Based Testing, using the Jenkins plugin.
Install and configure the Application Automation Tools plugin. This enables MBT to integrate with AI Codeless Testing via Jenkins. These steps are described in detail in the ALM Octane Help Center, in the section Set up UFT One integration. Make sure to follow the instructions on integrating via Jenkins.
Configure Model-Based Testing as described in the section Configure MBT.
To create test scripts with AI Codeless Testing:
Make sure the following fields are set in the unit's Details tab:
Automation status: Automated
Testing tool: Codeless
In the Details tab, click Automate with Codeless. AI Codeless Testing opens locally.
Write your test script in AI Codeless Testing. For details, see AI Codeless Testing Help Center.
Make sure that the test name is identical to the Unit ID in Model-Based Testing.
Refresh the unit in Model-Based Testing. The script you created in AI Codeless Testing now appears in the unit's Script tab, including parameters defined in AI Codeless Testing.
When you run the test from Model-Based Testing, define the following fields in the test suite's Planning tab:
Run mode: Automatically
Test runner: MBT (or whatever name you assigned to the Model-Based Testing test runner)
Business Process Model and Notation (BPMN) is a graphical representation for specifying business processes in a business process model.
You can import a BPMN file to inject its model into Model-Based Testing.
To import a BPMN file:
In the Settings menu, choose Import > Model Items.
Select BPMN, and navigate to the BPMN file.
Bulk import: For bulk import of multiple BPMN files, zip the files into zip or 7zip format, and then select the zip file for importing. A parent folder is created in the MBT repository representing the zip file, and each BPMN file is imported to a dedicated folder under the parent folder.
Model-Based Testing performs a validation to check that the models are valid.
If there are errors, Model-Based Testing displays an error report. At the bottom of the report you can click Export to Excel and save the error report.
Fix the errors and import again.
If there are no errors, the import begins.
Note: If you re-import the same file, new entities are created. Updating is not supported.
Mapping of BPMN elements in Model-Based Testing
During import, the following are created in MBT:
A folder is created with the name of the BPMN file, and the date and time of import. This contains the BPMN file as an attachment.
A model with the name of the BPMN file is created as the parent model, under the above folder.
If your BPMN file contains information on roles, a corresponding input parameter is created in MBT. Each unit is populated with the value of its role, and the role is displayed when hovering over the unit in the model. When you run a test, the data set displays the roles of each unit.
The following table lists the Model-Based Testing entities that are created, and their corresponding BPMN elements:
|MBT entity||BPMN element|
Process (ID, name), Subprocess (ID, name), CallActivity (ID, name, calledElement – ID of process for reuse)
Task (ID, name), UserTask , UntypedTask, SendTask, ReceiveTask, ServiceTask, ScriptTask, BusinessRule Task, ManualTask
|Decision||Gateway (ID, name, gateway type), Exclusive, Inclusive, Parallel Event|
textAnnotation (ID, children with text attribute)
|Placeholder||Events (ID, name, eventType, eventGatewayType, children except incoming/outgoing attributes), attachedToRef - sourceNode|
|Start node||startEvent (ID, name)<![CDATA[ ]]>|
|End node||endEvent (ID, name)|
|Edge||Incoming/outgoing (ID, name), sequenceFlow|
Note: The following elements are ignored during import: Pool, Participant, Collaboration, Message, messageFlow, DataObjects, messageEventDefinition, DataStore.