Skip to main content
Test Plans allow you to save load test configurations for reuse. Instead of configuring tests from scratch each time, save your settings as a plan and run it whenever needed.

Key Benefits

Reusable Configurations

Save test configurations once and run them multiple times with consistent settings.

Execution History

Track all test runs for each plan with full metrics and comparison capabilities.

Wizard & Script Modes

Configure tests via UI wizard or write custom K6 scripts directly.

CI/CD Integration

Run plans programmatically via API for automated performance testing.

Page Layout

The Test Plans page uses a split-panel layout:
  • Left Panel: List of all test plans (searchable, resizable)
  • Right Panel: Test execution history for the selected plan
Select a plan from the left to view its configuration and execution history on the right.

How to Create a Test Plan

Test plans are created automatically when you run a test from the New Test wizard.
1

Configure a New Test

Go to New Test and configure your test settings (URL, method, load pattern, thresholds, location).
2

Run the Test

Click Launch Test. The configuration is automatically saved as a test plan.
3

Find Your Plan

Navigate to Test Plans. Your new plan appears in the list with a generated name based on the target URL.
Test plans are named automatically using the format: hostname-METHOD-YYYYMMDD-HHMM (e.g., api.example.com-GET-20240115-1430).

How to Run a Test from a Plan

1

Select the Plan

Click on a test plan from the left panel to select it.
2

Click Run

Click the Run button in the right panel header.
3

Monitor Execution

A dialog shows real-time test progress. Results appear in the execution history when complete.

How to Edit a Test Plan

Modify any aspect of a saved test plan using the settings drawer.
1

Select the Plan

Click on the plan you want to edit.
2

Open Settings

Click the More menu (three dots) and select Edit Settings.
3

Modify Settings

Use the tabbed interface to edit different aspects of the plan.
4

Save Changes

Click Save Changes to update the plan.

Settings Tabs

TabSettings
BaseName, URL, HTTP method, location, executor type, VUs, duration
ParamsURL query parameters
HeadersCustom HTTP headers
BodyRequest body (JSON, XML, or text)
AuthAuthentication (Bearer, Basic, API Key)
StepsMulti-step scenario configuration
ThresholdsPerformance pass/fail criteria
SettingsFollow redirects, HTTP/2, timeout

How to Clone a Test Plan

Create a copy of an existing plan for variations or A/B testing.
1

Select the Plan

Click on the plan you want to clone.
2

Clone

Click the More menu and select Clone.
3

Edit the Clone

The new plan appears in the list. Edit its settings to differentiate it from the original.
Clone plans to create variations for testing different endpoints, load levels, or configurations while preserving the original.

How to Delete a Test Plan

1

Select the Plan

Click on the plan you want to delete.
2

Delete

Click the More menu and select Delete.
3

Confirm

Confirm the deletion. This action cannot be undone.
Deleting a test plan does not delete its execution history. Past test results remain accessible from the Test Results page.

Wizard Mode vs Custom Script Mode

Test plans support two configuration modes:

Wizard Mode (Default)

Configure tests using the UI without writing code. Best for:
  • Standard API testing scenarios
  • Quick configuration changes
  • Users unfamiliar with K6 scripting

Custom Script Mode

Write K6 scripts directly for advanced scenarios. Best for:
  • Complex test logic (loops, conditions, data-driven tests)
  • Custom metrics and checks
  • Scenarios not supported by the wizard
1

Open Plan Settings

Edit the test plan settings.
2

Switch Mode

Click Custom in the mode toggle at the top of the drawer.
3

Edit Script

The Script tab appears. Edit the K6 JavaScript code directly.
4

Save

Click Save Changes. The plan now uses your custom script.
When switching to Custom mode, the system generates an initial script from your wizard configuration. You can then modify it as needed.

Execution History

Each test plan tracks all its executions in a table showing:
ColumnDescription
Test IDUnique identifier for the execution
StatusPENDING, RUNNING, SUCCESS, or FAILED
LatencyAverage response time in milliseconds
Success RatePercentage of successful requests
RequestsTotal number of requests made
LocationGeographic origin of the test
Click any row to view detailed results for that execution.

CI/CD Integration

Run test plans programmatically using the API for automated performance testing in pipelines.
# Run a test plan via API
curl -X POST "https://api.shiftlabs.dev/api/v1/loadtest/plans/{planId}/run" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json"
The API returns a testId that you can use to poll for results or configure webhooks for completion notifications.

Troubleshooting

  • Refresh the page or click the refresh button
  • Check if you have read permission for Load Testing
  • Verify you’re viewing the correct project
  • You need write permission for Load Testing
  • The plan may be running a test; wait for completion
  • You need execute permission for Load Testing
  • Another test may already be running from this plan
  • Ensure the script is valid JavaScript
  • Check for syntax errors in the script editor
  • The script must export a default function
  • Click the refresh button in the toolbar
  • Tests may take time to complete and appear

FAQ

Direct scheduling is not available in the UI. Use CI/CD pipelines with cron triggers to schedule recurring tests via the API.
There is no limit to the number of test plans. Create as many as needed for your testing scenarios.
Test plans are project-scoped. To use a plan in another project, clone it and manually recreate in the target project.
Changing the URL updates the plan configuration. Future runs use the new URL. Past executions retain their original URLs.
Test plans can be exported as K6 scripts using Custom Script mode. Copy the generated script for use outside the platform.
Use the Test Results page to compare any two test executions, regardless of which plan they belong to.