Create and Manage Scenarios
Scenarios describe the user journeys, API calls, or protocol exchanges executed by each virtual user. This hub explains the workflow, highlights supported scenario types, and links to deep dives for every framework.
Scenario workflow
- Author or import code – upload a bundle, point to a Git repository, attach a storage artifact, or generate traffic with Testable’s recording proxy.
- Choose the runner/runtime – Playwright Test, Selenium, JMeter, Gatling, Postman, Node.js, Java, and more.
- Set entry commands and env – specify install/build steps, the command to run, and any system packages required by your test.
- Parameterize – define scenario parameters or data files so the same scenario can feed many configurations.
- Save & version – snapshots live inside the scenario; link them to configurations when you’re ready to run.
Follow the step-by-step UI walkthrough in Create a Scenario. All scenario actions are also available through the Scenario API.
Supported scenario types
Browser automation
- Playwright Overview
- Playwright Test (Node.js)
- Playwright Library (Node.js)
- Playwright Python
- Selenium & Webdriver.io
- Selenium Java, Selenium + Mocha, Protractor, Serenity BDD
- Puppeteer and OpenFin via Puppeteer
- OpenFin via Webdriver.io
- PhantomJS / SlimerJS
Protocol, API, and load generators
- JMeter
- Gatling
- Locust
- Node.js Script
- Java
- Postman Collections
- HAR Replay
- Custom protocols via HTTP, WebSocket, TCP, UDP (coming soon)
Capture, record, and lightweight journeys
Each scenario type guide explains prerequisites, file structures, build commands, and best practices for scaling on Testable runners.
Remote browser grids
Prefer to keep your scenarios in your existing CI and just point the test runner elsewhere? Use Testable as a remote grid:
These guides show the WebDriver or DevTools endpoints plus desired capabilities/channel settings for routing sessions through Testable infrastructure.
Parameters, data, and secrets
- Use scenario parameters for environment-specific settings such as base URLs, credentials, or feature flags.
- Upload CSV/JSON files and reference them from your scripts for synthetic data.
- Access parameter values via environment variables (e.g., parameter
Abc→ env varABC).
Version control & automation
- Link scenarios to Git via the Version Control guide so each execution fetches the right commit.
- Manage scenarios via the Scenario API for automated updates, branch-based runs, or pull-request validations.
Next steps
Once a scenario exists, wire it into a configuration to define load, runners, and schedules. From there you can trigger executions manually or through CI/CD, integrations, or API calls.