Tosca Distributed Execution setup options

You can set up Tosca Distributed Execution in one of the following ways:

These two ways of setting up Tosca Distributed Execution are mutually exclusive. You must choose one or the other.

Tricentis recommends using Distributed Execution with AOS.

Distributed Execution with AOS has a number of advantages over Distributed Execution without AOS.

How Distributed Execution with Automation Object Service works

This section explains how Distributed Execution with AOS works.

The image below gives an overview of the basic process behind Distributed Execution with Automation Object Service:

How Distributed Execution with Automation Object Service works

1. Create tests

Tosca Distributed Execution is available for multiuser environments. This means that you and other users share a common repository, which is a database that stores test data and test results. Each user retrieves test data, modifies the data, and checks in their changes to the same repository.

You create your tests in Tosca Commander. To do so, you need a workspace that has access to the common repository. Each instance of Tosca Commander on which you want to create tests and trigger executions requires a separate workspace.

2. Trigger execution

When you trigger the execution of a TestEvent in Tosca Commander, it sends the request to the Tosca Distribution Server.

3. Retrieve test data

The server retrieves the test data from the common repository through the Automation Object Service. This service accesses the common repository through a workspace.

4. Distribute execution tasks

The TestEvent whose execution you triggered contains several ExecutionLists. The Tosca Distribution Server distributes these ExecutionLists between the available Tosca Distribution Agents.

Agents synchronize with the server on a regular basis. Once an agent contacts the server, the server hands over the first ExecutionList of the TestEvent to this agent. As soon as the next agent contacts the server, the server hands over the second ExecutionList of the TestEvent to this agent. If there are no agents available, the server queues the ExecutionList(s) until an agent becomes available.

5-6. Save test results

Once a Tosca Distribution Agent has executed an ExecutionList, it sends the results to the server which in turn saves the results to the common repository through the Automation Object Service.

You can monitor the execution of your tests and view the test results with the Distributed Execution Monitor.

How Distributed Execution without Automation Object Service works

Distributed Execution without AOS works similarly up until the point where the Tosca Distribution Server receives the request to execute from Tosca Commander.

The image below gives an overview of the basic process behind Distributed Execution without Automation Object Service:

How Distributed Execution without Automation Object Service works

1. Create tests

Tosca Distributed Execution is available for multiuser environments. This means that you and other users share a common repository, which is a database that stores test data and test results. Each user retrieves test data, modifies the data, and checks in their changes to the same repository.

You create your tests in Tosca Commander. To do so, you need a workspace that has access to the common repository. Each instance of Tosca Commander on which you want to create tests and trigger executions requires a separate workspace.

2. Trigger execution

When you trigger the execution of a TestEvent in Tosca Commander, it sends the request to the Tosca Distribution Server.

3. Distribute execution tasks

The TestEvent whose execution you triggered contains several ExecutionLists. The Tosca Distribution Server distributes these ExecutionLists between the available Tosca Distribution Agents.

Agents synchronize with the server on a regular basis. Once an agent contacts the server, the server hands over the first ExecutionList of the TestEvent to this agent. As soon as the next agent contacts the server, the server hands over the second ExecutionList of the TestEvent to this agent. If there are no agents available, the server queues the ExecutionList(s) until an agent becomes available.

4. Retrieve test data

As the Tosca Distribution Server cannot access the common repository, it cannot retrieve test data. It only distributes the request to available agents. Consequently, each agent retrieves the test data from the repository directly.

5. Save test results

Once an agent has executed an ExecutionList, it saves the test results to the common repository.

To retrieve test data and save test results, each agent needs a separate workspace which has access to the common repository.

You can monitor the execution of your tests and view the test results with the Distributed Execution Monitor.

Advantages of Distributed Execution with Automation Object Service

Distributed Execution with AOS has a number of advantages over Distributed Execution without AOS.

Faster setup

Distributed Execution with AOS is easier to configure. You don't need to set up a workspace for every Tosca Distribution Agent.

Performance gain

Distributed Execution with AOS is more efficient. Tosca Distribution Agents work independently from a central repository and don't need to query a workspace for items to execute.

Better handling of multiple common repositories

Unlike Distributed Execution without AOS, agents in Distributed Execution with AOS don't have their own workspaces. The Automation Object Service is the single point of contact to the common repository, and you can set it up to work with multiple common repositories. When you switch to work on a new common repository in Tosca Commander, you do not need to switch anything manually.

Can run the same ExecutionList in parallel

In Distributed Execution without AOS, an ExecutionList can only run on one agent at any given time. So if the same ExecutionList is part of several TestEvents, then it is possible that the execution of some TestEvents cannot progress until that ExecutionList runs as part of another TestEvent.

In Distributed Execution with AOS, the same ExecutionList can run in parallel on several agents. This results in significant performance improvements.

Upgrade to Distributed Execution with AOS

For information on how to upgrade from Distributed Execution without AOS to Distributed Execution with AOS, and on how to switch between Tosca Distributed Execution setup options, see chapter "Upgrade to Distributed Execution with Automation Object Service".