TestRelic AI
Go to App
Cloud Platform

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.

k6
JMeter
Normalized at ingest
Performance workspace

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:

k6
tr upload k6 --summary summary.json --metrics metrics.json
JMeter
tr upload jmeter --jtl results.jtl
  • k6 — accepts the --summary-export JSON output, with an optional --out json metrics 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:

TabShows
OverviewRun summary and verdict
Requests / SamplesIndividual request or sample data
Thresholds & Checksk6 thresholds / JMeter assertions and their outcomes
ErrorsFailed requests, grouped
CompareThis 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.

Was this page helpful?

On this page