Skip to main content

Visual components

Relampo Studio represents a test as a Tree of visual components. Select a component to review its details, or right-click the appropriate parent to add a valid child component. The available choices depend on the selected location in the Test Plan.

This page groups the components by purpose. For the full YAML syntax, see the YAML Specification.

Structure and shared configuration

ComponentPurpose
Test PlanThe root of the file. It identifies the test and contains the global configuration and scenarios.
VariablesDefines reusable values. Reference a value anywhere supported with {{variable_name}}.
Data SourceProvides test data that a scenario or request can consume, such as values from a CSV file.
HTTP DefaultsDefines shared HTTP settings, such as a base URL, timeout, or headers, inherited by requests unless they override them.
MetricsConfigures the metrics collected while the test runs.

Scenarios and load

ComponentPurpose
ScenarioAn executable user flow. It contains its load configuration and ordered steps.
LoadDefines how the scenario runs: virtual users, duration, and the selected load model. Run uses this configuration for a visual execution.
CookiesControls cookie handling for the scenario, including automatic or manual management and persistence between iterations.
Cache ManagerControls whether cached responses are used and when the cache is cleared.

Requests and request data

ComponentPurpose
HTTP RequestSends an HTTP request. Studio supports the generic request form and GET, POST, PUT, DELETE, PATCH, HEAD, and OPTIONS methods.
SQL RequestExecutes a database request for supported PostgreSQL or MySQL flows.
HeadersAdds HTTP headers shared by a request or overrides inherited defaults.
Body and query parametersSupplies the request payload and query-string values. They can use variables and values from a data source.
File UploadAttaches a file to a request when the endpoint accepts uploaded content.

Flow controllers

Controllers organize steps and decide how their children execute. They are added inside a scenario or another compatible controller; they are not a replacement for a request.

ControllerPurpose
GroupOrganizes related steps under a named container.
TransactionMeasures its child steps as one transaction while preserving their execution order.
ParallelRuns child steps concurrently.
BalancedDistributes execution across its compatible child items according to the configured balance.
IfRuns child steps only when its condition is met.
LoopRepeats its child steps.
RetryRepeats a child flow using its retry and backoff configuration.
One TimeRuns initialization steps once for the shared execution context.

Pacing

ComponentPurpose
Think TimeAdds a pause between requests or steps to model a more realistic user rhythm.

Response processing

These components belong to an HTTP request and work with its request or response data.

ComponentPurpose
Spark BeforeRuns custom logic before the request, for example to prepare data or variables.
Spark AfterRuns custom logic after the response, for example to transform values or record additional information.
ExtractorCaptures a dynamic value from a response, such as a token, ID, header, or text match, so later requests can reuse it.

Validation and error handling

ComponentPurpose
AssertionValidates the response. Use it to check status codes, content, headers, JSON paths, response time, and other expected results.
Error PolicyDefines what the execution does after an error. It can be set at the Test Plan, scenario, or request level and can handle 4xx responses, 5xx responses, and timeouts.

How to work with components in Studio

  1. In Tree, select the component you want to review.
  2. Use the details panel to configure the fields available for that component.
  3. Right-click a component to add an allowed child; Studio offers only the components that are valid in that position.
  4. Use Code to review the resulting canonical YAML, then use Debug or Run to validate the flow.