# Share a WebdriverIO Test Report — One URL per Suite

Canonical: https://commareports.com/share-webdriverio-report
Published: 2026-09-01

> WebdriverIO's HTML reporters write a browsable run report. Publish it to Comma from CI so every run lands at the same URL, with anchored threads on failures and a revision history.

# Share a WebdriverIO report

A WebdriverIO run produces a lot of context and almost none of it
survives the trip to whoever needs it. The reporter builds a page with
the steps, the screenshots, the logs. CI stores it for two weeks behind
a login. The version that reaches the team is a red check mark.

## Publish it

Generate the report the way your setup does — `wdio-html-nice-reporter`,
or `@wdio/allure-reporter` followed by `allure generate` — then publish
the directory:

```bash
npx wdio run wdio.conf.js || true

curl -fsS -X PATCH \
  "https://commareports.com/api/v1/reports/$COMMA_REPORT_ID" \
  -H "Authorization: Bearer $COMMA_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d "$(jq -n --rawfile html reports/html-reports/master-report.html \
        --arg title "WDIO — $BROWSER — build $BUILD_NUMBER" \
        '{title: $title, html: $html}')"
```

Or drag the report folder into [the app](https://commareports.com/) so
the screenshots upload alongside and their references are rewritten to
the uploaded copies.

`|| true` keeps the publish step running on a failed suite — the run you
most want at a URL. One report id per capability: Chrome and Safari with
separate URLs, so a browser-specific flake has its own visible history
instead of averaging out inside a merged report.

## What the URL changes

- **Threads on the failing step.** With the screenshot right there. See
  [commenting on HTML](/comment-on-html).
- **A history per suite.** Revision per run at one URL, past the CI
  retention window. See [revisions and diffs](/share-html-report).
- **Readable by people without CI access** — PM, designer, the person
  who filed the bug.
- **An agent can read the comments back** through [MCP](/docs/mcp) when
  the thing fixing the test is Claude Code rather than a person.

## Limits

- **Entry HTML: 5 MB.** Assets: 25 MB per file, **250 MB and 500 files
  total**. Video-on-failure is generous with both — record on failure
  only, or attach video as an [asset](/docs/api) rather than inline.
- **Scripts run, sandboxed**: `allow-scripts`, no `allow-same-origin`.
- **60 requests/minute per token.**

## Try it

Comma is free — unlimited reports, unlimited commenters, unlimited
revision history.

**[Create your first report →](https://commareports.com/)**

### Related

- [Nightwatch reports](/share-nightwatch-report) · [Allure reports](/share-allure-report)
- [Playwright](/share-playwright-report) · [Cypress](/share-cypress-report)
- [GitLab CI](/ci/gitlab-ci-html-report) · [Publish from CI](/docs/ci)
