Performance Testing
Upload k6 and JMeter load-test results into a single performance workspace with automatic pass/fail service levels.
Performance Testing brings load-test results from k6 and JMeter into TestRelic as a first-class run type, alongside your functional test suites — one workspace, one set of service levels, regardless of which tool produced the run.
Phase 1
This is the first phase of Performance Testing. Streaming live k6 metrics, scheduled performance runs, per-endpoint SLOs, and additional tools (Gatling, Locust) are planned for a later phase.
Uploading a run
From your CI pipeline or terminal, upload results with the CLI:
tr upload k6 --summary summary.json --metrics metrics.jsontr upload jmeter --jtl results.jtl- k6 — accepts the
--summary-exportJSON output, with an optional--out jsonmetrics stream for finer-grained series. - JMeter — accepts a JTL file in either CSV or XML format.
Whichever tool produced the run, TestRelic normalizes it into the same internal document at ingest, so the workspace renders every run the same way — you don't need to know which format a given run came from.
Service levels
Define pass/fail thresholds for a repository once, under Repo Settings → Performance:
- Gate — a breached threshold fails the run.
- Warn — a breached threshold annotates the run without failing it.
- Thresholds can be scoped to the whole run, or to a 1-minute sliding window, so a short spike doesn't fail a run whose overall error rate is fine (or vice versa).
Service levels are evaluated once, at ingest — the verdict you see is stable and doesn't change based on how you're viewing the run.
The workspace
Opening a performance run shows synchronized lanes on one timeline:
- Concurrency — virtual users / threads over time.
- Throughput — requests per second.
- p95 latency — with your gate threshold drawn as a labelled line, and any breach shaded directly on the lane.
- Error rate.
A failure-first playhead lands you on the primary breach automatically, and a chronological moments list marks the stages of the run — ramp-up, breach open/close, first failure, peak load — so you don't have to scrub the timeline to find what went wrong.
Evidence is organized into tabs:
| Tab | Shows |
|---|---|
| Overview | Run summary and verdict |
| Requests / Samples | Individual request or sample data |
| Thresholds & Checks | k6 thresholds / JMeter assertions and their outcomes |
| Errors | Failed requests, grouped |
| Compare | This run against the most recent passing run of the same scenario |
Repo setup
The Performance section in Repo Settings holds:
- Tool cards for k6 and JMeter, each with a ready-to-copy pipeline snippet for your CI.
- The service-level editor described above.
- Baseline selection, used for the Compare tab.
- Environment definitions, so runs against staging and production are tracked separately.
k6 and JMeter also appear alongside your other frameworks in the Add Repository flow and onboarding cards, so a performance-only repository can be set up the same way as any functional-test repository.
LLM Evaluations
Ingest, browse, and track LLM-evaluation runs in the TestRelic cloud platform through the same shared run UI as your tests.
Infrastructure
Manage where your tests run — bring-your-own cloud machines, device grids, and CI pipelines — as a shared team resource instead of a per-laptop config file.