Native reporters for Playwright, Cypress, Jest, Vitest, pytest and more
Native Qualflare reporters for Playwright, Cypress, Jest, Vitest, Mocha, CucumberJS, pytest and Go capture the steps, retries and screenshots JUnit XML misses.

Qualflare now has native reporters for eight popular test frameworks. JUnit XML records little more than pass or fail and a message. A native reporter also records the steps that ran, every retry attempt, screenshots and metadata, so a failure in Qualflare looks the way it did on your machine.
The reporters
| Framework | Install | Highlights |
|---|---|---|
| Playwright | npm i -D @qualflare/playwright | Nested test.step() steps, retries and flaky tests, screenshots, videos, automatic shard numbers |
| Cypress | npm i -D @qualflare/cypress | Command steps, per-attempt retries, automatic failure screenshots, videos |
| Jest | npm i -D @qualflare/jest | Nested steps, retries, attachments, metadata (Jest 29+) |
| Vitest | npm i -D @qualflare/vitest | Assertion diffs, nested steps, retries, shards (Vitest 3+) |
| Mocha | npm i -D @qualflare/mocha | Nested steps, retries, attachments |
| CucumberJS | npm i -D @qualflare/cucumberjs | Given/When/Then steps, Scenario Outline rows, screenshots |
| pytest | pip install qualflare-pytest | Steps, reruns, attachments, pytest-xdist workers recorded as shards |
| Go | go install github.com/Qualflare/qualflare-go/cmd/qualflare-go@latest | Subtests as their own cases, nested steps; wraps go test -json |
How it works
Each reporter writes its results to a ./qualflare-results folder and makes no network calls of its own. Upload the folder with the qf CLI:
qf my-project collect ./qualflare-results
Sharded runs can write into the same folder, and qf merges them into one launch.
Availability
The reporters are open source and work on every Qualflare plan. Use qf 0.1.24 or newer to upload screenshots. Each framework's page in the docs has setup instructions.