Description
A fixed number of VUs execute as many iterations as possible for a specified amount of time. This executor is equivalent to the global vus and duration options.
Options
Besides the common configuration options, this executor has the following options:
Option | Type | Description | Default |
---|---|---|---|
duration(required) | string | Total scenario duration (excluding gracefulStop). | - |
vus | integer | Number of VUs to run concurrently. | 1 |
When to use
Use this executor if you need a specific amount of VUs to run for a certain amount of time.
Example
In this example, we'll run 10 VUs constantly for a duration 30 seconds.
constant-vus.js
Observations
The following graph depicts the performance of the example script:
Based upon our test scenario inputs and results:
- The number of VUs is fixed at 10, and are initialized before the test begins;
- overall test duration is fixed at the configured 30 second duration;
- each iteration of the default function is expected to be roughly 515ms, or ~2/s;
- maximum throughput (highest efficiency) is therefore expected to be ~20 iters/s, 2 iters/s * 10 VUs;
- we see that the maximum throughput is reached and maintained for the majority of the test;
- approximately 600 iterations are therefore performed in total, 30 seconds * 20 iters/s.