Browser Flow — Test the Journey, Not the Page
A browser flow performs a real sequence of actions in a real browser: navigate, fill a field, click, wait, assert that the expected thing appeared. The whole sequence runs in one session, so login state and cookies persist, which is what makes it possible to test anything past the front page.
When it helps
Because everything you normally check is about pages, and what you actually ship is journeys. A page that renders perfectly in isolation can be part of a flow that is completely broken — a form that validates and never submits, a step that works until the one before it sets a cookie it does not expect, a redirect after login that loops. None of that is visible from loading any single URL, and manual testing covers it exactly once, on the day you build it.
Worth running automatically
The value is entirely in running it unattended against production, because production is where the conditions that break flows live: real data, real third-party dependencies, real session infrastructure. A staging environment reproduces none of those faithfully. When a run fails, what matters is what it hands you — the specific failing step with a screenshot of the browser at that instant removes the reproduction phase, which is the part of a front-end bug that consumes the afternoon.
What you get out of it
Tests what your users do rather than what your pages return. It is the only check here that would notice a checkout that is broken while every individual page in it loads perfectly.