Share a Codeception report
Codeception's HTML report is unusually good at the thing that matters: it shows the steps, in order, with the failing one expanded and the screenshot attached. It is a readable account of what the browser actually did.
And it lands in tests/_output/ on a CI worker that is about to be
destroyed.
Publish it
vendor/bin/codecept run acceptance --html || 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 tests/_output/report.html \
--arg title "Acceptance — $BRANCH — build $BUILD_NUMBER" \
'{title: $title, html: $html}')"
Or drag tests/_output/ into the app, which
uploads the failure screenshots and page snapshots as assets and rewrites
the report's references to the uploaded copies — the step that decides
whether the published page shows the screenshot or an empty box.
|| true because a red suite is the run worth a link. One report id per
suite, PATCH per run: a stable URL with a revision history.
What the URL changes
- The conversation lands on the step. "The fixture user has no billing address since #4120" pinned to the failing assertion. See commenting on HTML.
- Suite history past the artifact window. See revisions and diffs.
- Reviewers without a CI login can read it.
- Private by default — see the sharing model.
Limits
- Entry HTML: 5 MB. Assets: 25 MB per file, 250 MB and 500 files total — a large acceptance suite that snapshots the page on every failure can approach the file count.
- Scripts run, sandboxed:
allow-scripts, noallow-same-origin. - 60 requests/minute per token.
Try it
Comma is free — unlimited reports, unlimited commenters, unlimited revision history.
Related
- PHPUnit reports · Behave
- phpDocumentor — the other PHP artifact worth a URL
- Publish from CI · GitHub Actions