Driver FixRecommendedSound, Wi-Fi or graphics acting up? Check drivers firstFind missing or outdated drivers fast.Check DriversOctober DealsAmazon USOctober deal check: compare before you payAmazon US: current deals, useful picks and tech finds.Check DealsClean PCRecommendedOne scan can reveal what keeps slowing WindowsLook for cleanup and repair opportunities.Run Scan×
Skip to content
World desk7 min

Cross-Browser Testing with Cypress: A Practical Guide

A practical Cypress guide to browser selection, Chrome and Firefox coverage, experimental WebKit, CI setup, version reproducibility, and troubleshooting.
Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Run Cypress against Chrome-family browsers or Firefox with npx cypress run --browser <name>, and install that browser in the local or CI environment first. Cypress describes WebKit support as experimental, so treat it as an additional Safari-engine check—not ordinary, fully supported Safari automation. For CI, a useful starting point is to run the full suite in your primary browser and a deliberate critical-path subset in another browser, then expand coverage where product risk justifies the added runtime and infrastructure.

Which browsers can Cypress test?

Cypress supports Chrome-family browsers, including Edge, and Firefox. Its launch reference names Chrome for Testing, Chrome and its release channels, Chromium, Edge and its release channels, and Firefox and its release channels. Cypress detects installed browsers; the browser you select must be installed in the environment where Cypress runs. See the cross-browser guide and the more detailed browser launching reference.

Cypress starts its own browser instance with an isolated test profile rather than using your ordinary browsing session. In CI, provide the target browser and its dependencies explicitly, or use a Cypress browser image as described in the CI overview.

Support status at a glance

Target What to know
Chrome-family, including Edge Supported browser families; Cypress officially supports the latest three major versions of Chrome and Edge. Consult the launch reference for supported names and release channels.
Firefox Supported; Cypress officially supports the latest three major versions. The current launch reference says Firefox versions older than 140 cannot be launched by current Cypress. This floor is release-sensitive.
WebKit Experimental. It requires explicit opt-in and setup; it is not equivalent to supported, full Safari automation.

These are Cypress’s stated support details, not a guarantee that every browser/version combination behaves identically. Check the launch reference for the Cypress release you use, especially when upgrading.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Run a Cypress suite in a different browser

For a command-line run, pass the browser name to Cypress. The selected browser must already be installed and detectable in the environment.

  1. Install Cypress using your project’s package manager. The official installation guide covers npm, Yarn, pnpm, and Bun.

  2. Install the browser you want Cypress to launch. In CI, this may mean installing a browser package or choosing a Cypress browser image.

  3. Run the suite with an explicit browser name:

    • npx cypress run --browser chrome
    • npx cypress run --browser firefox
    • npx cypress run --browser edge

For interactive work, open the Cypress app and choose an installed browser in its browser selector before starting the tests. Explicit selection in scripts and CI makes the intended coverage clear instead of letting a changing or deprecated default determine it.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Choose a browser matrix that matches product risk

Running the entire suite in every browser increases confidence in browser-specific behavior, but it also adds test runtime and CI resource cost. Cypress’s documented pattern is to run all tests in one browser and a targeted set of critical-path specs in another. Treat that as a starting strategy, not a universal rule or a claim of complete cross-browser parity.

A practical way to prioritize

  1. Identify the browsers and engines that matter to your users and supported product environments.

  2. Choose a primary browser and run the broadest useful suite there.

  3. Select a small, intentional set of smoke or critical-path specs for additional browsers. Include flows whose failure would materially affect users, as well as features with known browser-sensitive behavior.

    Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
  4. Review failures and product risk over time. Expand the secondary suite where it provides meaningful coverage; run broader suites when the added confidence is worth the runtime and infrastructure cost.

When deciding how much to run, weigh user relevance and browser engine, the breadth of specs, runtime and CI capacity, version reproducibility, and the maturity of the browser integration. Cypress’s cross-browser guide illustrates separate browser jobs/groups for a full Chrome run and a selected Firefox subset.

Set up browser-specific CI jobs

Keep browser selection and coverage visible in your CI configuration. Separate jobs or clearly named groups make it easier to tell which browser ran, what portion of the suite it covered, and where a failure occurred. Install the required browser or use a suitable Cypress browser image; the CI documentation describes the image approach.

For example, a pipeline can use these distinct commands:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
  • npx cypress run --browser chrome for the broad suite.
  • npx cypress run --browser firefox --spec "cypress/e2e/critical/**/*.cy.js" for a chosen Firefox subset, adapting the spec path to your project.

The second command is only an example of targeting selected specs; use the spec paths and shell quoting appropriate to your project and CI runner. A partial run should be named and reported as partial coverage so it is not mistaken for the full suite.

Make browser versions reproducible

Cypress officially supports the latest three major versions of Chrome, Firefox, and Edge, according to its current launch reference. That reference also says Firefox versions below 140 cannot be launched by current Cypress because their WebDriver BiDi implementation is incomplete; it notes a Firefox floor of 135 for Cypress 15.0.0 through 15.18.1. These are time-sensitive compatibility details, not permanent requirements: verify against the Cypress release and browser image you actually run.

Chrome updates automatically, which can change test behavior between runs. Cypress recommends Chrome for Testing when practical for deterministic Chrome runs because its binaries are versioned and do not auto-update. Pinning browser versions in local and CI environments can reduce environment drift, but schedule deliberate updates so pinned versions do not become stale. Details are in the launch reference.

What WebKit testing does—and does not—tell you

Cypress WebKit support is experimental. The documented setup requires enabling experimentalWebKitSupport: true, installing playwright-webkit, and installing additional Linux dependencies where applicable. Consult the current setup and limitations before adding it to a pipeline.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

A WebKit run can help uncover behavior in Safari’s browser engine, but it is not a substitute for validating the full Safari installation and environment your users rely on. Cypress documents limitations including unsupported cy.origin() and Test Replay in WebKit. Decide whether this experimental coverage is useful for your application, and label its status clearly in CI.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Troubleshoot browser launch and test problems

The requested browser is missing

Cause: Cypress cannot detect the selected browser because it is not installed in the local or CI environment. Fix: install the browser, or use a Cypress browser image that includes the browser and dependencies; then rerun with the explicit --browser option.

Firefox will not launch

Cause: the installed Firefox version may be below the floor supported by your Cypress release. The current launch reference says current Cypress cannot launch Firefox older than 140, while Cypress 15.0.0 through 15.18.1 had a floor of 135. Fix: check the reference for your exact Cypress version and install a compatible Firefox version.

Tests change after a Chrome update

Cause: Chrome is evergreen and may update automatically, changing browser behavior. Fix: consider Chrome for Testing for versioned, non-auto-updating binaries, pin the browser used locally and in CI, and update it on a planned cadence.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

WebKit setup or tests fail

Cause: WebKit requires the experiment flag and its additional package and, on applicable Linux environments, dependencies. Some Cypress features are not supported there. Fix: verify the documented setup and limitations before interpreting the failure as an application defect; use a supported browser for tests that depend on unsupported features.

CI passes in one browser but not another

Cause: browser engines can expose different application behavior, and browser versions or CI dependencies can differ. Fix: preserve the failing browser and version in the job output, confirm that local and CI environments use the intended browser versions, and reproduce with the same explicit browser command before changing the test or application.

Performance, reliability, and cost trade-offs

Each additional browser job consumes CI time and capacity, while repeating every spec may offer diminishing value for a product whose important flows are already well covered. Keep the primary suite broad, make secondary-browser coverage intentional, and track which flows and browser versions each job actually exercises. Prefer stable, explicit browser versions when reproducibility matters; balance that against the maintenance work of updating pinned binaries. No single browser count or percentage of tests is established as right for every team.

Or skip the browser setup

If your goal is to capture a page rather than exercise it with Cypress, ScreenshotNeo is a website screenshot API and MCP server: it returns a PNG, JPEG, WebP, or PDF from one GET request. It does not replace Cypress tests or verify interactive behavior.

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

cURL example, with the API documentation at ScreenshotNeo docs:

curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp

Cookie/consent banners, newsletter popups, and chat widgets are removed before the shot; those steps can be turned off. Bot checks/CAPTCHAs, blank pages, timeouts, failed loads, and cache hits cost nothing, and response headers report the page verdict and billing status. AI agents can use its MCP server tools, including take_screenshot, get_page_info, and capture_pdf. The Free plan includes 1,000 shots per month with no card; paid plans start at $5 for 3,000 shots. Sign up for ScreenshotNeo’s free plan.

Further reading

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

Leave a Reply

Your email address will not be published. Required fields are marked *

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

More from the Wire

  1. Shenzhen desk3 min
    HONOR Expands Beyond Smartphones With Humanoid Robot RevealHONOR said it unveiled its first humanoid robot at MWC 2026 and named shopping assistance, workplace inspections, and supportive companionship as intended uses. Later Robotics D1 claims and a reported…
  2. Cupertino desk5 min
    Apple Unveils AirPods Max 2: The Upgrade That Should Have Happened Years AgoAirPods Max 2 adds H2-powered audio features and Apple claims up to 1.5× more effective ANC, but its design, Smart Case, and 20-hour battery rating are unchanged. Wired lossless audio…
  3. Cupertino desk4 min
    Apple’s OLED Touch MacBooks Are Coming—but the Dynamic Island Is the Real GambleApple has not announced an OLED touchscreen MacBook, but reports point to high-end models arriving in late 2026 or early 2027. The reported Mac Dynamic Island could be useful, but…
Recommended PC Tool
Recommended PC Tool
Outdated Drivers Are Slowing You DownFree scan - exact matches
Windows Errors? Fix Them Before They SpreadFree repair scan

Two free Windows tools

One Free Minute Could Fix That PC

Before you go - each of these free tools takes about a minute and tackles what quietly slows a Windows PC down.

Special offer. View Outbyte info, uninstall instructions, EULA, and Privacy Policy.