Back to all steps

Video is playing

Step fields
seconds (number)
Assert that a video is actually playing on the page, not just a poster/Play button being rendered. The step finds the main player itself (walks iframes and shadow DOM, picks the visible, largest <video> among several, ignoring ads/previews) and samples time twice: if currentTime advances and the stream is ready, the step passes (live streams too). The parameter is optional: minimum time advance in seconds per sample (default 0.2). Fails with a clear reason if the video is paused, buffering, ended, or errored. Will not work on a cross-origin embedded player (third-party iframe — browser restriction) or DRM/canvas video — the step reports this explicitly. Put it after clicking Play.
Examples: empty · 0.5
Usage example

Assert that a video is actually playing on the page, not just a poster or a Play button being rendered. Works for video hosts (RuTube, VK Video) and embedded players.

The step finds the main player itself: it walks <iframe>s and the Shadow DOM, picks the visible and largest <video> among several (ignoring ads and previews), then samples time twice. If currentTime advances and the stream is ready, the step passes (live streams too).

The parameter is optional: minimum time advance in seconds per sample (default 0.2).

Examples:

  • empty — default threshold
  • 0.5 — require at least 0.5 seconds of advance

Tip: put this step after clicking the Play button.

Will not work on a cross-origin embedded player (third-party iframe — browser restriction) or DRM/canvas video — in that case the step reports the reason explicitly.