🧪 Test Hub
testing: Demo target v3.0.0 · built-in demo site
Duplicating DEMO-023 -- give the copy a new id, then Create.

New test

Metadata saved to the .json sidecar next to the test file

Turn video off for tests that mostly wait. The video file grows with wall-clock time whenever the page repaints — a 30-minute wait on a page with a clock or progress bar costs about 80 MB and shows almost nothing. The activity replay still captures those runs, and stays small.


Groups

Weekly schedules are managed on the Schedules page.

Playwright code the file must define run(page, ctx)

ctx.base_url is the target URL from config.json · ctx.log("...") writes to the run log · ctx.screenshot("name") saves a screenshot · with ctx.timed("label"): times a phase · raise AssertionError to fail.
Editor: type page. or ctx. (or press Ctrl-Space) for the API list with docs · Ctrl-F search · Ctrl-/ comment.

“Record in a browser tab” opens the Remote Recorder: the hub drives its own bundled Chromium and you interact with a live picture of it — so it works on a deployed hub (AWS/office) and from a locked-down workstation browser. Everything finishes IN that tab: stopping offers “create a new test”, which brings you back here with the code filled in. If your browser blocks the pop-up (Safari), use the “Record new test” button on the Tests page instead — it opens in this same tab.
Saving writes the test file (.py or .spec.ts) and its .json sidecar — the folder stays the source of truth.