BlogVisual Verification

Dark-Mode and Locale Matrix Testing in CI

One journey becomes reliable when its meaningful contexts are explicit.

Themes and translations rarely break business logic. They break space, contrast, hierarchy, and readability—the properties most automated assertions do not observe.

Model them as contexts on a critical flow instead of cloning the journey into separate suites. A checkout flow stays one flow whether it runs as an admin in light mode or a member in dark mode with German copy.

Start with a risk-shaped matrix

Do not generate every Cartesian combination. Choose contexts that materially change layout or permissions: longest priority locale, dark theme, smallest supported viewport, restricted role, empty data, and validation errors.

Capture those contexts for each pull request. Group changed results under the same flow so the reviewer can see whether one implementation change broke a single context or the journey as a whole.

An explicit matrix makes coverage discussable, reviewable, and cheap to extend. Hidden manual checks do none of those things.

Start with one screenshot workflow.

Run one real docs capture on the free tier and see whether the maintenance disappears.

Start for free