8.0.0
Released Released on July 18, 2021
Summary:
We've made some updates to ensure a consistent run experience across browsers.
Now all browsers run via cypress run run headlessly, with a device pixel ratio
of 1, and a screen size of 1280x720 by default.
Breaking Changes:
Please read our Migration Guide which explains the changes in more detail and how to change your code to migrate to Cypress 8.0.**
When running
cypress runprevious to 8.0, some browsers would launch headed while others were launched headless by default. Cypress now runs all browsers duringcypress runas headless by default. Addresses #16832.The default screen size when running a headless browser has been reverted back to 1280x720 pixels (pre 7.0 behavior). Addresses #16853.
When running the
--headlessChrome browser viacypress run, the device pixel ratio will now be 1 by default, matching the behavior of all other browsers. This behavior can be overridden through the browser launch API. Addresses #17375.Cypress now enforces version checks for browser launching and will error during
cypress runand not allow opening the browser incypress openwhen attempting to open unsupported browser versions. Cypress supports Chrome>=64, Firefox>=86, and Edge>=79. Addressed in #17355.Arguments returned from a chained function will no longer incorrectly be of type
jQueryand instead have ananytype. Fixes #16669.The
Cypress.ConfigOptions,Cypress.ResolvedConfigOptionsandCypress.RuntimeConfigOptiontypes have been updated so thatConfigOptionsmatch the JSON schema. Addressed in #17251.
Features:
You can now configure certificate authority (CA) and client certificates to use within tests on a per-URL basis via a
clientCertificatesconfiguration option. See Client certificates for more detail.Setting the environment variable
ELECTRON_RUN_AS_NODEnow starts Cypress as a normal Node.js process rather than an Electron process. Addresses #16505.
Bugfixes:
console.logandconsole.errorcalled within the plugins file will now be captured in thestdoutsent to the Cypress Dashboard, making it visible in Output logs in the Dashboard. Fixes #7434.There are several fixes for
cy.intercept()including:When using the experimental Cypress Studio, there should be a reduced occurrence of "Studio failed to save commands" error messages. Fixes #14767.
cy.invoke()now retains the properthiscontext on nested object methods. Fixes #3871.We no longer trigger unnecessary snapshot re-renders when hovering over the Command Log. Fixes #17257.