docs: add video recording guide + rework visual-testing#271
docs: add video recording guide + rework visual-testing#271goosewobbler wants to merge 5 commits into
Conversation
Recommends wdio-video-reporter for capturing video of test runs against @wdio/electron-service and @wdio/tauri-service. Companion to the visual-testing doc — video is for debugging, visual is for regression detection. The guide covers the small amount of glue needed (recommended config for both services, per-OS output convention, retention modes) and is deliberately honest about what `wdio-video-reporter` actually does: screenshot stitching at command granularity, not a real video pipeline. So the output is a 3–10 fps slideshow suitable for "what happened during this failed test?" debugging, not smooth screencast. Surprising-positive finding from the spike (PR #124 in wdio-desktop-mobile-example): tauri-official + Linux works here, even though the same cell is broken for @wdio/visual-service. The reporter has no before() initialisation script, so it sidesteps the executeAsync hang. Documented in the Tauri provider notes. Cross-linked from electron-service README Operations and tauri-service README Guides, mirroring the visual-testing cross-links established in PR #266. Companion to the spike validated in goosewobbler/wdio-desktop-mobile-example#124. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Greptile SummaryThis PR adds a new
Confidence Score: 5/5Documentation-only change with no runtime impact; all linked files verified to exist and content is accurate for the validated Electron and Tauri targets. All four changed files are Markdown documentation. No code is executed, no APIs are modified, and no schemas change. The Tauri provider matrices and known-issue descriptions are internally consistent and match the PR's companion validation results. The only gap is that "every currently supported framework" is stated but Dioxus video recording was not validated or documented — an accuracy nit rather than a functional problem. docs/video-recording.md — the "every currently supported framework" claim should be scoped to reflect that only Electron and Tauri have been validated for video recording.
|
| Filename | Overview |
|---|---|
| docs/video-recording.md | New guide covering wdio-video-reporter integration; accurate for Electron and Tauri, but the "every currently supported framework" claim overstates Dioxus coverage since the companion example repo has no Dioxus video configs. |
| docs/visual-testing.md | Trimmed and reframed guide; removed per-framework boilerplate in favour of service-agnostic snippets, retained all framework-specific known issues and provider matrices, added back-link to new video-recording.md. All linked docs verified to exist. |
| packages/electron-service/README.md | Single-line addition of a Video Recording cross-link under the existing Operations section, consistent with existing link style and path convention. |
| packages/tauri-service/README.md | Single-line addition of a Video Recording cross-link under the Guides section, consistent with existing link style; counterpart dioxus-service README was not updated. |
Flowchart
%%{init: {'theme': 'neutral'}}%%
flowchart TD
A[WDIO Test Runner] --> B[Framework Service]
A --> C[Ecosystem Service / Reporter]
B --> D["@wdio/electron-service"]
B --> E["@wdio/tauri-service\n(embedded / official / crabnebula)"]
B --> F["@wdio/dioxus-service\n(embedded)"]
C --> G["@wdio/visual-service\n(VRT — regression signal)"]
C --> H["wdio-video-reporter\n(debugging artefact)"]
G --> I["__visual__/platform/arch\n[/provider]/baseline|actual"]
H --> J["__video__/platform/arch\n[/provider]/test-ts.webm"]
E -- "Tauri adds driverProvider segment" --> I
E -- "Tauri adds driverProvider segment" --> J
Reviews (5): Last reviewed commit: "Merge branch 'main' into docs/video-reco..." | Re-trigger Greptile
Release Preview — no release
Updated automatically by ReleaseKit |
The setup-finished description named only the Electron output path. Tauri users following the Tauri config snippet (which adds a `<provider>` segment) would look for the file at the documented path and not find it. Split into two bullets so each service's actual layout is on the page. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
… guides Replace parallel Electron/Tauri config blocks with a single service-agnostic snippet, foregrounding what's unique to this monorepo — the Tauri provider × OS matrix and the known issues (CrabNebula × macOS-CI, official × Linux executeAsync hang) — and trimming the install/wire-in/spec boilerplate that paraphrased upstream docs. Both guides now share the same shape so they're scannable side-by-side. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
…fault Drop the "Both @wdio/electron-service and @wdio/tauri-service compose with X" opener in favour of "WDIO's service architecture lets services compose freely — no special integration needed." Framework names move from canonical enumerations to illustrative examples (e.g. mock-API snippets, output-path exceptions). New framework services landing from the roadmap won't need doc updates to be acknowledged as supported — only framework-specific sections (e.g. Tauri provider notes) gain content. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Resolves conflict in docs/visual-testing.md from main's PR #275 (@wdio/dioxus-service integration). Kept the reframed interop-as-default opening and service-agnostic Quick Start; preserved the genuinely Dioxus-specific content from main (Dioxus provider notes H2 with the embedded/external table and Xvfb requirement, Dioxus mock-API example as a third illustration). Dropped main's enumerated "@wdio/electron-service, @wdio/tauri-service, and @wdio/dioxus-service" opener and the per-service Dioxus Quick Start config block — both were the kind of per-service duplication the reframe is designed to avoid. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Summary
Originally this PR added a single new doc —
docs/video-recording.md— recommendingwdio-video-reporteras the companion todocs/visual-testing.md(PR #266): video is the debugging artefact, visual is the regression signal.Scope expanded mid-review to trim and reframe both ecosystem-integration guides so they scale as new framework services land from the roadmap, without needing per-doc maintenance.
Changes
Original: new video-recording guide
onlyBuiltDependenciessnippet for@ffmpeg-installer/*.embeddedeverywhere;officialLinux + Windows — note that unlike the visual cell, the Linux + official combo here works because the reporter has nobefore()script;crabnebulamacOS only, excluded from hosted macOS CI for the TCC reason).packages/electron-service/README.mdandpackages/tauri-service/README.md.Expanded scope: trim + reframe both guides (commits 3dfc336, b6cfb24)
...subdirsparameterised. Cut install/wire-in/spec boilerplate that paraphrased upstream. ~30% line reduction in each doc.@wdio/electron-serviceand@wdio/tauri-servicecompose with X" opener in favour of "WDIO's service architecture lets services compose freely — no special integration needed." Framework names are now illustrative examples (mock-API snippets, Tauri provider notes) rather than canonical enumerations. When new framework services land, the docs already cover them — only framework-specific sections need additions.What stays foregrounded
The valuable, can't-find-anywhere-else content:
official× Linux ×executeAsynchang (visual only — explicitly noted as not hit by video).MAX_MISMATCH_PCT = 1rationale (visual).onlyBuiltDependenciesfor@ffmpeg-installer/*(video).Test plan
packages/*/docs/.Companion
goosewobbler/wdio-desktop-mobile-example#124— all 16 video cells passed (electron × 3 OSes × 3 packages, tauri-embedded × 3 OSes, tauri-official × Linux + Windows, tauri-crabnebula × Linux + Windows). Surprising-positive: tauri-official on Linux works for video even though it's broken for visual.docs/visual-testing.md(PR docs: add visual regression testing guide #266).🤖 Generated with Claude Code