Goals and scope
Purpose
Section titled “Purpose”test-scale lets engineering teams generate realistic, distributed HTTP load against a target on demand, without manually provisioning load generators. Every run produces a durable report you can compare to earlier runs of the same plan.
- Scale worker count to match requested
target_rpsautomatically. - Support traffic shapes: constant, ramp, step, and spike patterns.
- Expose live throughput, latency percentiles, error rate, and worker count.
- Cost nothing when idle — workers scale down after runs complete.
- Enable regression testing via saved plans and run comparison.
Non-goals (v0.1)
Section titled “Non-goals (v0.1)”| Not in scope | Why |
|---|---|
| Continuous synthetic monitoring | Runs are explicit, not always-on |
| Chaos / fault injection | External observation only |
| In-target APM | Measures latency/errors from the client side |
| Multi-step user journeys | One HTTP request per plan |
| Browser rendering | HTTP only |
Primary users
Section titled “Primary users”- Backend / platform engineers validating services before launch or traffic events.
- SRE / performance engineers using load tests as release gates.
Core workflows
Section titled “Core workflows”- Define and submit a test plan (YAML or UI).
- Watch live metrics during the run.
- Stop early if needed.
- Review the report and compare to a baseline slug.
- Re-run a saved plan unchanged to detect regressions.
Functional requirements (summary)
Section titled “Functional requirements (summary)”| ID | Requirement |
|---|---|
| FR1 | Define target, protocol, ramp, duration |
| FR2 | Distribute load across workers |
| FR3 | Auto-scale workers to requested load |
| FR4 | Live metrics during runs |
| FR5 | Stop running tests |
| FR6 | Persist reports |
| FR7 | Compare two reports |
| FR8 | Re-submit saved plans |
| FR9 | Target ownership verification (when enabled) |
| FR10 | Pre-run cost estimate (where configured) |
Web UI (v0.1)
Section titled “Web UI (v0.1)”The control plane serves an embedded UI (default port 8080):
| Area | Capabilities |
|---|---|
| Submit | New or saved plan, auth, body, SLO fields, cost estimate |
| Runs | Live table, stop, re-run, dashboard link |
| Compare | Side-by-side metrics and regression hints |
| Dashboard | Embedded Grafana with run picker |
Full guide: Web UI. CLI parity: CLI reference.
Success criteria
Section titled “Success criteria”- Sustains target throughput for the configured duration without the platform becoming the bottleneck (when workers are sized honestly).
- Live metrics lag reality by only a few seconds.
- Workers reach desired count before or early in the ramp — no slow drift.
Future topics (multi-tenancy, gRPC, geo workers) remain open; see the repository roadmap and CHANGELOG.