A variable number of iterations are executed in a specified period of time. This is similar to the ramping VUs executor, but for iterations instead, and k6 will attempt to dynamically change the number of VUs to achieve the configured iteration rate.
See the arrival rate section for details.
In addition to the common configuration options this executor also adds the following options:
|stages(required)||array||Array of objects that specify the target number of iterations to ramp up or down to.|||
|preAllocatedVUs(required)||integer||Number of VUs to pre-allocate before test start in order to preserve runtime resources.||-|
|startRate||integer||Number of iterations to execute each timeUnit period at test start.||0|
|timeUnit||string||Period of time to apply the startRate the stages target value.||"1s"|
|maxVUs||integer||Maximum number of VUs to allow during the test run.||-|
If you need your tests to not be affected by the system-under-test's performance, and would like to ramp the number of iterations up or down during specific periods of time.
In this example, we'll execute a variable RPS test, starting at 50, ramping up to 200 and then back to 0, over a period of 1 minute.