TOSCA Distributed Execution
This exercise will try out TOSCA Distributed Execution, the benefits of using it are
- Supports untended execution, creates RDP connection automatically while execution
- Splits the execution load to multiple agent system
- Monitors the actual test execution with Test Event Monitor
After installing the TOSCA 9.3, the Distributed execution components are under C:\Program Files (x86)\TRICENTIS\Tosca Testsuite\ToscaCommander\DistributedExecution
Distribution Server
For installing the distribution server, InstallServer.bat under DistributedExecution\Server should be executed,
parameter IP address & Port can be assigned if required.
The ToscaDistributionServer.exe will be configured as windows service, and RDP service will be started after the installation. In case of restarting the server, RDP should be started manually with command
Distribution Agent
Open DistributedExecution\Agent\ToscaDistributionAgent.exe.config, and update few parameters below.
- CommunicationService endpoint points to the distribution server
- UserSettings\Tricentis.DistributionAgent.Properties.Settings\Workspace
- UserSettings\Tricentis.DistributionAgent.Properties.Settings\UserName
- UserSettings\Tricentis.DistributionAgent.Properties.Settings\Password
- UserSettings\Tricentis.DistributionAgent.Properties.Settings\PortForServerCallbacks
and then start ToscaDistributionAgent.exe with administrator privilege. In the task tray, right click the ToscaDistributionAgent, and select configure agent, it will show a popup windows, in which you configure different configuration parameters; and also enable allow RDP with the username and password for the RDP, then click save to complete the setup.
Execution Monitor
Copy all files under DistributedExecution\Monitor to a server with IIS installed, run Install TestEventMonitor.bat, it will create a virtual directory with name of TestEventMonitor.
Setup in TOSCA
Settings
Go to Settings\Commander\DistributedExecution, and set value to
- EventMonitor\Url: http://localhost/TestEventMonitor
- Server\EndpointAddress: http://localhost:9000/ManagerService
Now, we can open Execution Monitor from TOSCA, and see the status of all registered agents.
Test Configuration
Go to Execution\Configurations,
Firstly, right click Configurations, and run task Update configurations from server, it will sync test configurations from server to TOSCA.
Then, add new configuration based the requirement of the tests, such as Memory, Operating system etc.
Test Event
Test Event is required to be created for distributed execution, in which one or multiple test configurations could be assigned, for each test configuration, one or more execution lists could be attached to it. Once the test event is configured, we can kick off the execution with following ways,
- In TOSCA Commander, right click the event and click Execute Now
- Trigger the execution through Tosca CI Client
Test Execution Monitor
In TestEventMonitor web page, current execution status will be displayed, including state, event name, Actual result, start time, Create, more details can be seen after clicking the test event item.
The test event can be cancelled in the test event monitor.
Integration with Team City using TOSCA CI Client
Build Steps
Generate TOSCA CI configuration file
- Runner Type: Powershell
- Script: Source
- Script source:
Tests Execution
- Runner Type: Command Line
- Run: Executable with parameters
- Command executable: C:\Program Files (x86)\TRICENTIS\Tosca Testsuite\ToscaCommander\ToscaCI\Client\ToscaCIClient.exe
- Command parameters:-m distributed -c “c:\Temp\CIExeConfig.xml” -t junit -r “c:\temp\result.xml” -x True
Display test result in Team City
In Build features, add a new build feature with following details:
- Report Type: Ant JUnit
- Monitoring rules: c:\temp\result.xml