About Distributed Load Testing

Applies to ReadyAPI 3.52, last modified on April 18, 2024

Running load tests often involves simulating requests from thousands of virtual users. Simulating these users requires a lot of resources from the computer running the test. In some situations, one computer cannot generate the load enough to properly test the server.

To avoid this, you can create distributed tests. These tests use multiple computers to simulate the load on the target server. At the same time, each individual computer can handle the load generation.

If the computers creating the load are in different regions, you can measure how well your server works with clients from these regions. This also creates a more realistic test. All users are unlikely to access your server from one computer, so running distributed tests makes the simulation closer to actual user behavior.

How does ReadyAPI support running distributed tests?

In ReadyAPI, distributed load tests are created on the Distribution page.

API distributed load testing with ReadyAPI: The Distribution Page

Click the image to enlarge it.

You can run these tests on any number of Agents (an Agent is a computer running the LoadUI agent application).

You can also run a load test from a cloud, for example, by using the Amazon EC2 service. In this case, you do not need to support the hardware for your load tests. All the data transmitted between cloud agents and ReadyAPI is encoded.

Agents run load tests in the same way as the tests are run on the local computer. To modify the settings of the agent, copy the readyapi-settings.xml file to the user folder on the agent computer. This file is stored in the <User directory>/.readyapi folder on any computer that has ReadyAPI installed.

To modify the maximum number of threads on the computer, change the <con:setting id="UISettings@maxThreads">1000</con:setting> value.

If the maximum number of threads is specified both in the readyapi-settings.xml file and in ReadyAPI settings, the agent will always choose the minimum value between the two.

For details on how to create distributed tests in ReadyAPI, see Creating Distributed Load Tests.

Note:

If you use the Data Sink test step, you must create a file, to which the test step will save data, before running the test. If you do not create the file on a remote computer, the Agent will create it in a subdirectory of the <home>/.readyapi/loadui/agent-projects directory.

Note: When you run a Load Test configured to run on Load Agents, your project is automatically saved and pushed to the configured agents.
  • Whenever you save a project, the corresponding project files gets updated. If and when you connect to Git, Git will detect that change and ask you to commit and push it.

My distributed test does not work, what should I do?

If your distributed test fails, make sure that you created it correctly. To do this, follow the instructions from the Creating Distributed Load Tests topic.

If you cannot fix the issues with your test, contact our Support Team. We will be glad to help you.

See Also

Distribution Page
Load Test Agents

Highlight search results