- You can now apply certain test configuration for the duration of a suite or test by passing a configuration object to the test or suite as the second argument. Addresses #7167.
Cypress.isBrowser()has been expanded to allow for new matcher arguments to assist in filtering matching browsers. Addresses #7168.
- We now display the currently running file at the top of the Test Runner’s Command Log. That file can be opened in your preferred file opener by clicking the file. Addresses #7506.
- We added experimental shadow DOM support through the
experimentalShadowDomSupportoption. See the Experiments page for more information. Addresses #144.
- Upon domain navigation,
afterhooks defined in completed suites no longer erroneously rerun. Fixes #1987.
- Errors thrown within root level
afterhooks now correctly display in the Test Runner’s Command Log. Fixes #2296.
- We fixed a regression in 4.6.0 where an XHR response without a body would cause Cypress to throw
Cannot read property '__error' of null. Fixes #7518.
- We fixed a regression in 4.6.0 where using
cy.visit()to an authenticated URL would error with
Request cannot be constructed from a URL that includes credentials: /__cypress/runner/./wasm/mappings.wasmFixes #7481.
- We now properly load code from the
supportFilewhen they are TypeScript files. Fixes #7459.
- utf-8 characters now properly display within error code frames. Fixes #7507.
- Errors thrown in a
cy.on('fail', fn)fail handler now display a stack trace and code frame pointing to the origin of the error. Fixes #7512.
.click()now properly clicks on wrapped inline elements when the first child element in the parent element has no width or height. Fixes #7434 and #7012.
cy.wrap()now properly respects the
timeoutoption. It also better handles situations when passed a promise that never resolves. Fixes #5980.
experimentalComponentTestingis enabled, Cypress will no longer exit with SIGABRT in certain situations. Fixes #7572.
- We fixed a regression in 3.8.0 where the “Tests” button in the Test Runner wouldn’t take you back to the tests list in all browsers. Fixes #5948.
- Using the
.pause()no longer does anything. This prevents the Test Runner from getting into a ‘stuck’ state. Fixes #6867.
- The design of errors and some iconography displayed in the Test Runner’s Command Log have been updated. Addresses #7499, #7542 and #7563.
- The commands in the Test Runner’s Command Log now display in the same casing as the original command. Addresses #5773.
- The navigation links in the Test Runner now display the correct CSS styles when focused. Addresses #7491.
Cypress.config()now has TypeScript types for the
taskTimeoutoption. Addresses #7531.
- TypeScript types for
Cypress.log()have been updated to be more accurate. Addresses #7445.
- TypeScript types for
Cypress.automationhave been added. Addresses #7519.
- We now display a more accurate error message when passing a browser to the
--browserflag that is not supported by Cypress. Addresses #6979.