Testing Tools7 min readSeptember 21, 2026

Cross-Browser Testing in 2026: What Actually Breaks and Where

"We test in Chrome" is fine until a Safari user hits a date picker that won't open. Cross-browser testing has a reputation for tripling CI time — that's only true if you test everything everywhere instead of tiering by what actually differs.

"We test in Chrome" is the default position for most engineering teams, and most of the time it's fine — until a support ticket comes in from a Safari user whose date picker doesn't open, or a Firefox user stuck on a file upload dialog that never resolves. Cross-browser testing has a bad reputation for tripling CI time for marginal benefit, but that reputation comes from testing everything everywhere, not from testing the right things in the right places.

Where Browser Differences Actually Bite

  • Safari date and time inputs. WebKit's native date picker behaves differently enough from Chromium's that date-heavy forms — booking flows, DOB fields, scheduling — are a recurring source of Safari-only bugs.
  • WebKit positioning and scroll quirks. Sticky headers, overscroll behavior, and backdrop-filter effects are still a recurring source of WebKit-only layout bugs that render identically in Chromium and Firefox and don't in Safari.
  • Firefox file upload and download dialogs. Native file dialogs behave differently enough across engines that upload flows are worth explicit cross-browser coverage if file upload is part of a critical journey.
  • Mobile Safari viewport units. 100vh including or excluding the address bar differently than desktop is a classic source of layout bugs that only show up on an actual iOS device.

What Doesn't Need Cross-Browser Coverage

Internal admin tools used by a known set of employees on a known browser almost never justify multi-engine testing. Marketing pages with no complex interaction generally need visual and accessibility checks more than they need behavioral cross-browser coverage. Running every test on every engine because it's technically possible is how teams end up with the tripled CI time that gave cross-browser testing its bad name — see parallel execution without chaos for how to keep CI feedback time down as the suite grows.

A Tiered Strategy

  1. Tier 1 — revenue-critical journeys: run on Chromium, WebKit, and Firefox. Checkout, signup, and payment flows justify the cost because a Safari-only bug here is directly expensive.
  2. Tier 2 — secondary flows: run on Chromium only, with a lighter WebKit smoke pass on release rather than every PR.
  3. Tier 3 — everything else: covered by a visual regression pass rather than full behavioral tests per engine.

Running It Without Tripling CI Time

Playwright ships Chromium, WebKit, and Firefox engines out of the box, which means the cross-browser cost is execution time, not setup time — a meaningful difference from the driver-management overhead Selenium adds per engine (see our Playwright vs. Selenium comparison). Run Tier 1 flows across all three engines in parallel rather than sequentially, and the added wall-clock time stays minimal as long as you have enough parallel runners — the total test count triples, but with sufficient concurrency it doesn't translate into three times the wait.

Not sure which of your journeys actually need multi-engine coverage? Book a demo and we'll help you tier your suite instead of guessing.

Tags

cross-browser testingPlaywrightSafariWebKittesting tools

See QA Guardian in action

Everything we write about is what we build and run every day. Book a demo and we'll show you on your own codebase.