Skip to content

Replay & Runs

Replay a script with one click: deterministic Playwright execution at zero LLM cost (only self-healing consumes a few tokens), ideal for daily regression.

A real replay end to end: Run Current Version → live progress → per-step detail in Run Records

Run entries

  • Case detailRun Current Version, or the Run button on a script version row (headless toggle and login config available).
  • Case list → row action Run runs the default script version directly.
  • You can stop a run in progress; cases have a default script version (the Version column in the case list) for bulk regression.

The run process

Clicking Run shows a Run Progress card on the case detail (with a Stop button) streaming per-step logs:

Run detail

Run detail: per-step status (passed/failed), self-healed flag, duration, token usage and the run log

When the run finishes, open the Run Records tab (or click View detail in the global Run Records menu) for the full breakdown:

  • Per-step table: action, status (passed/failed), self-healed flag, duration, token usage, message.
  • Run log: browser viewport, login-config state, and each goto / fill / press / assert → PASSED/FAILED.
  • Failure diagnostics: failed steps save a screenshot automatically and collect browser console and network logs.
  • Export (top right): results as JSON / Excel (test report).

Assertion types

CategoryAssertionNotes
UIElement visibleWaits for the element (auto-wait, up to 10s)
Element hiddenWaits until the element is invisible/removed — good for toasts and spinners
Text contentVerifies element text
Page URLCurrent URL contains the expected substring
APIStatus codeStatus of the latest response matching a URL keyword
Response bodyBody contains the expected substring
JSON fieldReads a field by JSON path (e.g. data.items.0.id) and compares
WebSocketSent messageMatches a client-sent WS message
Received messageMatches a server-pushed WS message

Locating API/WS traffic

locator.value holds a URL keyword substring (e.g. /api/login); the engine matches the most recent response/frame whose URL contains it.

Unique test data

{{var}} placeholders support system variables (random phone/email/ID numbers) and project environment variables, generating unique test data to avoid dirty-data collisions like "phone already registered". See Test Data & Login for the variable list and rules.

Self-healing

  • When a selector no longer matches (e.g. after a frontend redesign), replay automatically switches to AI self-healing using the step's natural-language instruction, then continues.
  • Self-healed locators can be written back to the original script with one click, effective for the next run.

Review & export

  • Run list and per-step details live under Run Records (see Run records): per-step status, duration, failure screenshots and console/network capture.
  • Results can be exported as JSON / Excel (test report).

TestDog Test Case Management Tool