Yes. Cypress automates Firefox through WebDriver BiDi. To run tests, install a compatible Firefox version and use cypress run --browser firefox. The required Firefox version depends on your Cypress release: Cypress 15.0.0–15.18.1 requires Firefox 135 or newer; Cypress 15.19.0 and later requires Firefox 140 or newer.
How Cypress’s Firefox support works
WebDriver BiDi is Cypress’s supported automation interface for Firefox. Cypress 14.1.0, released February 25, 2025, began using BiDi with Firefox 135 and newer, while retaining a CDP fallback for older Firefox versions. Cypress 15.0.0, released August 20, 2025, removed that Firefox CDP support, making BiDi the interface for Firefox automation. See the Cypress version migration guide and Cypress changelog.
As an Amazon Associate I earn from qualifying purchases.
Firefox version requirements
| Cypress version | Minimum Firefox version | Source |
|---|---|---|
| 14.1.0–14.x | Firefox 135 or newer uses BiDi; older Firefox versions had a CDP fallback. | Cypress migration guide |
| 15.0.0–15.18.1 | Firefox 135 or newer | Cypress migration guide |
| 15.19.0 and later | Firefox 140 or newer | Cypress migration guide and browser-launching guide |
Cypress says Firefox versions below 140 implement BiDi incompletely and will fail under the current guidance for Cypress 15.19.0 and later. If a CI image or ESR installation pins Firefox below the floor for your Cypress version, update the browser before upgrading Cypress. Confirm the version in your actual local or CI environment rather than assuming the browser supplied by an image is current.
Recommended Free Tools
Run Cypress tests in Firefox
Cypress detects browsers installed on the local operating system. Install Firefox in the environment where Cypress runs, then select it on the command line:
#1 Best Overall
cypress run --browser firefox
This runs Cypress in run mode using the detected Firefox installation. The browser-launching documentation also lists Firefox Developer Edition and Firefox Nightly among Firefox-family options.
Use the interactive runner
For interactive mode, start Cypress with cypress open, then choose Firefox from the browser dropdown. The selected browser must also be installed locally.
Rank #2
Use the same tests
The BiDi change does not require edits to ordinary Cypress test commands. Cypress documents that commands behave the same in Firefox under BiDi; the main setup concern is using a compatible browser version.
What changes in Firefox automation—and what does not
In Cypress 15, commands including cy.url(), cy.hash(), cy.go(), cy.reload(), cy.title() and cy.location() use the automation client to return values. Cypress uses CDP for Chromium browsers and WebDriver BiDi for Firefox. Cypress says this helps avoid cross-origin access issues associated with reading values through the window object. The release behavior is described in the Cypress changelog.
Rank #3
cy.window() still returns the current window object, but some properties may remain inaccessible depending on origin context. A switch to BiDi should not be treated as a change that removes all browser-engine differences.
Firefox network interception remains on the legacy path
The protocol transition does not mean Firefox has the same network-interception implementation as Chrome, Chromium or Edge. Cypress’s native network interception documentation says Firefox and WebKit continue to use the legacy network path because Cypress has not implemented a native browser network path for them; Chrome, Chromium and Edge use the native path by default in the documented configuration.
Rank #4
Plan cross-browser runs around compatibility and CI capacity
Cypress recommends balancing test confidence, test duration and infrastructure cost when choosing a cross-browser CI strategy. Include the browser version floor in that plan: a pinned Firefox image that is too old for the Cypress release can fail before it provides useful test coverage. Cypress’s cross-browser testing guide covers the installed-browser requirement and CI considerations.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
- Check the Cypress version and the Firefox version available in every local and CI environment.
- Upgrade a pinned Firefox image when it is below the matching compatibility floor.
- Choose browser coverage with regard to the confidence it adds, the extra run time and the CI capacity it consumes.
Troubleshooting Firefox runs
Cypress says Firefox is unsupported or fails during launch
Check the Cypress/Firefox version pairing first. For Cypress 15.19.0 and later, Firefox must be version 140 or newer; for Cypress 15.0.0–15.18.1, the documented floor is Firefox 135. Update the browser in the failing environment if it is below that floor.
Firefox does not appear in Cypress
Cypress detects installed browsers. Confirm Firefox is installed and available in the same operating system or CI environment where Cypress runs, then reopen Cypress or rerun the command.
A cross-origin value is inaccessible
BiDi changes how Cypress retrieves several navigation-related values, but cy.window() still exposes a window object subject to origin-context restrictions. Do not assume every property is readable across origins; use Cypress’s documented commands for the value you need.
Network interception differs from Chromium
This can reflect the supported implementation path rather than a setup error: Firefox remains on Cypress’s legacy network path, unlike the native path used by Chrome, Chromium and Edge in the documented configuration. Consult the network-interception guide when diagnosing browser-specific behavior.
Or skip the browser setup
If you need a rendered-page image rather than a Cypress browser test, ScreenshotNeo is a website screenshot API and MCP server. One GET request can return a PNG, JPEG, WebP or PDF. For example, with cURL:
curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp
See the ScreenshotNeo API documentation for request options. It removes cookie-consent banners, newsletter popups and chat widgets before capture; bot checks, blank pages, failed loads and cache hits are not billed. Its MCP server lets AI agents use screenshot tools. The free plan includes 1,000 screenshots per month without a card; paid plans start at $5 for 3,000 shots. These are screenshots, not a replacement for running Cypress assertions in Firefox.
Sign up for ScreenshotNeo’s free plan: 1,000 screenshots a month, no card required.
Quick Recap
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.




