Browser test videos vs screenshot testing: what should you review?
Compare browser recordings and screenshot testing for UI review, with examples of layout changes, interaction flows and when to use both.
5 min readBy Diff Stage
On this page
Use screenshot comparisons when the question is how one captured state looks. Use browser recordings when you need to see what happens across interactions. For an important journey, use both, plus behaviour assertions.
Pick based on what you need to learn. A video shows a sequence. An automated screenshot comparison can flag a visual difference at a chosen state. Diff Stage's video player does not detect pixel regressions automatically.
Review one checkout change in two ways#
Take a Laravel checkout PR that changes the declined-payment message and moves the retry button next to it. The browser test submits once, checks the error, retries, then checks the confirmation.
The review has two questions:
- Does the error state have the intended layout and wording?
- Does the path through the error and retry make sense?
A screenshot of the error state helps with the first. A recording of the full retry flow helps with the second. Neither one needs you to weaken the test.
Screenshots make selected states inspectable#
Say the PR moves the retry button too close to the error text. Capture the same state before and after the change. The reviewer can check the spacing without replaying the journey.
An automated visual assertion compares the screenshot with a reference image. Playwright's toHaveScreenshot() does this. A saved screenshot on its own is only an attachment. It becomes a regression check once something compares it with the expected image. Playwright visual comparisons.
You can capture several states in one journey. For the checkout, pick the error state and the successful confirmation. You don't have to wait until the end of the test. Chromatic's Playwright integration supports targeted snapshots during a flow. Chromatic targeted snapshots.
Screenshots suit reviewing spacing, typography, colors and which elements are visible at chosen points. Someone still has to interpret the difference. A changed image may be the intended design, an unwanted change or unstable test data.
A snapshot can't show what happened between the captured states. If that matters for the requirement, add assertions or more snapshots.
Videos show the sequence between states#
Watch the checkout recording from the first submit. You see the error appear, the retry button become available and the confirmation replace the form after the next attempt.
The reviewer can check whether the message appears before the retry, whether the form visibly resets and whether the new flow adds an unexpected screen in between. You look for these in the footage. A recording does not guarantee every problem shows up.
Diff Stage adds action navigation and paired playback against an approved recording of the same flow. Select the submit action, then watch what happens around it in both revisions. Selecting an action jumps to that moment, so you don't need to remember a timestamp.
Video review has limits. Small visual changes are easy to miss. Long clips take more attention. Hosted processing can add cursor movement and pauses for reading. So playback shows the recorded journey. It does not measure how fast the app responds.
If timing matters, measure and assert it separately. Don't judge performance by how long a processed clip takes to play.
Match the evidence to the decision#
| Review question | Useful evidence | What still needs checking |
|---|---|---|
| Has the error-state layout changed? | A screenshot comparison of that state | Whether the difference is intended |
| What happens through decline and retry? | A recording of the journey | Required behaviour assertions and relevant coverage |
| Does the retry create the right order? | A behaviour or persistence assertion | What the user sees around that result |
| Is the confirmation visually consistent? | A reference-image comparison | Fixture stability and baseline approval |
| Does the changed interaction feel understandable? | Recorded sequence plus human review | Other users, devices and paths the test did not cover |
The two overlap. A series of targeted screenshots can cover several steps. A paused video lets you inspect one state. Pick the output that helps with the decision in front of you. They are not rival testing philosophies.
Plan the maintenance and review work#
Both need controlled fixtures. Use a stable cart, a predictable error response and a disposable test account. Make it clear the payment is simulated, so nobody mistakes the test for a live payment-provider check.
For screenshot comparisons, decide which states need reference images and keep the rendering environment the same. Playwright warns that rendering can vary between environments. Treat a baseline update as a change to expected output. Don't accept updates automatically whenever a test fails. Playwright visual comparison guidance.
For recordings, pick the flows that matter and keep each journey easy to follow. In Diff Stage, a matching baseline needs a successful default-branch recording with the same flow key. If a test name changes, check the comparison. Don't assume the old baseline still matches.
Both still need a human. Screenshot tools can find differences, but someone has to judge them. Video reviewers need a reason to watch and a clear outcome to check.
Use both without duplicating every check#
For the checkout PR, keep assertions for the declined response, the successful retry and the confirmation. Capture the error screen, because its layout matters. Record the journey, because the PR changes how a user recovers.
Each output answers a different question. The screenshot comparison covers the changed state. The video shows the interaction around it. The assertions enforce the outcomes the app must produce.
Watch a PR comparison to see Diff Stage's player, then use the Pest recording guide to choose one flow. For the practical review steps, read comparing browser test videos before merging.
Related articles
Diff Stage vs Chromatic: choosing evidence for Laravel PR reviews
Recorded Pest journeys versus automated visual snapshots, and when a team needs one, the other or both.
Diff Stage vs GitHub Actions video artifacts for PR review
Whether downloading recordings from CI is enough, or your reviewers need hosted, commit-specific comparisons.
Show your reviewers what changed
Add the recorder to your test suite, and your next pull request gets a video.