HTML Report Overview
When to Use
When VR tests fail (or pass with retries), and you need to see what changed and why.
Pattern
The Playwright HTML report is a self-contained static HTML bundle generated by @playwright/test after a test run. It contains:
index.html— the SPA entry point- A
data/(andresources//trace/) folder with attachments: screenshots (expected, actual, diff PNGs fromtoHaveScreenshot), ad-hocpage.screenshot()images, videos (.webm), trace archives (trace.zip), console logs, network logs - All JS/CSS bundled in — no external CDN required
Open from disk or any static host — but traces need a real HTTP server, so use show-report (see Viewing).
Decision
| Reporter | When |
|---|---|
html |
Triage VR diffs, browse traces — the canonical post-run artifact |
list |
Streaming line-per-test in terminal — local dev flow |
line |
Single updating terminal line — minimal CI logs |
dot |
One char per test — very large suites |
json |
Machine-readable — custom dashboards |
junit |
Required by Jenkins, Bamboo, Azure DevOps, GitLab test tab |
github |
GitHub Actions inline annotations on PR diff |
blob |
Sharded runs — merge later with playwright merge-reports |
For VR, always include html. Combine with others for CI integration; never replace.
Common Mistakes
- Using
listonly and trying to triage VR from terminal — no diff viewer; impossible to scrub a slider - Skipping
htmlbecause reports "take up space" — they're regeneratable; the developer time saved on triage dwarfs the disk cost
See Also
- Enabling
- VR Diff Panel
- Reference: Playwright Reporters