Override the injection profile

Override the injection profile of a test-as-code or build-from-source simulation to adjust your load pattern without modifying or repackaging your simulation code.

Activate the override

The Override your injection profile step appears in the simulation creation and edit form (step 3). It is optional and collapsed by default.

When no override is configured, the banner indicates that the injection profile comes from your simulation code. Click Override injection profile to open the configuration form.

To revert to the code-defined profile, click Use injection profile defined in code.

Select the injection model

Two injection models are available:

  • Open model: you control the injection rate (users per second). Use this when you want to test how your system handles a specific arrival rate.
  • Closed model: you control the number of concurrent users. Use this when you want to maintain a constant pool of active users. Don’t reason in terms of concurrent users if your system can’t push excess traffic into a queue.

For more information on the two models, see Workload models.

Define scenarios and injection steps

Name your scenarios

You must define one injection profile per test scenario.

  • Single-scenario simulations: the scenario name field is disabled. The profile applies automatically to the single scenario in your simulation.
  • Multi-scenario simulations: you must enter a name for each scenario. Names must match the scenario names defined in your simulation code exactly, including case.

You can add up to 50 injection steps per scenario. Click Add another scenario to define profiles for additional scenarios.

Start from a template

For the open model, five templates are available to pre-populate a set of injection steps. No templates are available for the closed model.

After selecting a template, you can modify, add, or remove individual steps. The template is no longer applied once you change a step type or the number of steps.

Ramp + plateau: Gradual ramp then steady state

  1. Ramp Users/sec: 0 → 10 over 60s
  2. Constant Users/sec: 10 for 300s

Staircase: Stepped plateaus with ramps between

  1. Ramp Users/sec: 0 → 5 over 30s
  2. Constant Users/sec: 5 for 60s
  3. Ramp Users/sec: 5 → 10 over 30s
  4. Constant Users/sec: 10 for 60s
  5. Ramp Users/sec: 10 → 20 over 30s
  6. Constant Users/sec: 20 for 60s
  7. Ramp Users/sec: 20 → 40 over 30s
  8. Constant Users/sec: 40 for 60s

Long plateau: Ramp then hours-long steady state

  1. Ramp Users/sec: 0 → 10 over 60s
  2. Constant Users/sec: 10 for 14,400s (4h)

Spike: Steady baseline with a sudden burst

  1. Constant Users/sec: 5 for 120s
  2. Stress Peak Users: 500 over 30s
  3. Constant Users/sec: 5 for 120s

Single user: One user, one pass

  1. At Once Users: 1

Available step types: open model

Step type Description Parameters
At Once Users Inject a fixed number of users simultaneously Users (int > 0)
Ramp Users Inject users spread evenly over a duration Users (int > 0), Duration (s) (> 0)
Constant Users/sec Inject users at a constant rate per second Rate (users/s > 0), Duration (s) (> 0)
Ramp Users/sec Ramp the injection rate from one value to another From (users/s ≥ 0), To (users/s ≥ 0), Duration (s) (> 0)
Stress Peak Users Inject users following a Heaviside step function Users (int > 0), Duration (s) (> 0)

Available step types: closed model

Step type Description Parameters
Constant Concurrent Users Maintain a constant number of concurrent users Users (int > 0), Duration (s) (> 0)
Ramp Concurrent Users Ramp the concurrent user count between two values From (int ≥ 0), To (int ≥ 0), Duration (s) (> 0)

View injection profile details

The injection profile summary appears in two places in the UI once the simulation is saved.

Simulation details: The Injection profile field in the header shows:

  • Defined in code: no override is configured.
  • X scenario(s), Y steps (open) or X scenario(s), Y steps (closed): an override is active, where X is the number of configured scenarios and Y is the total number of injection steps.

Run summary: The injection profile shown in the run summary reflects the profile that was used for that specific run. It may differ from the current simulation configuration if the simulation was edited after the run.

Edit this page on GitHub