13.0.0
Released Released on August 28, 2023
Summary:
When recording to Cypress Cloud, users now receive our newest feature: Test Replay. Test Replay brings the debugging experience you know and love from the Cypress app directly into your recorded tests in Cypress Cloud.
Previously, trying to debug failures and flake in CI was painful and time consuming with only videos & screenshots. Test Replay provides a way to inspect the DOM, network events, and console logs of your application from your tests exactly as they ran in CI.
Test Replay is available in all Cypress Cloud plans. To start using Test Replay, simply record a run to Cypress Cloud. Learn more in the Test Replay documentation.
Test Replay now serves as the primary replacement for debugging via video. Video capture and videoCompression of captured video are now set to false by default and videoUploadOnPasses is removed.
Read more about v13.0.0 in our blog post.
Breaking Changes:
:::info
Refer to the v13 Migration Guide for help migrating your code.
:::
The
videoconfiguration option now defaults tofalse. Addresses #26157.The
videoCompressionconfiguration option now defaults tofalse. Addresses #26160.The
videoUploadOnPassesconfiguration option has been removed. Please see our screenshots & videos guide on how to accomplish similar functionality. Addresses #26899.Requests for assets at relative paths for component testing are now correctly forwarded to the dev server. Fixes #26725.
The
cy.readFile()command is now retry-able as a query command. This should not affect any tests using it; the functionality is unchanged. However, it can no longer be overwritten usingCypress.Commands.overwrite(). Addressed in #25595.The deprecated configuration option
nodeVersionhas been removed. Addresses #27016.The properties and values returned by the Module API and included in the arguments of handlers for the
after:runandafter:spechave been changed to be more consistent. Addresses #23805.For Cypress Cloud runs with Test Replay enabled, the Cypress Runner UI is now hidden during the run. This change was made to improve performance in situations where the Runner no longer needs to be rendered. If video is recorded during the run, the Runner will not be visible. In addition, if a screenshot with
capture: runneris taken, the screenshot will be taken as if thecapture: viewportoption was passed. You can turn off this behavior by passing--runner-ui. Addressed in #27482.The browser and browser page unexpectedly closing in the middle of a test run are now gracefully handled. Addressed in #27592.
Automation performance is now improved by switching away from websockets to direct CDP calls for Chrome and Electron browsers. Addressed in #27592.
Edge cases where
cy.interceptwould not properly intercept have been addressed. Addressed in #27592.Node 14 support has been removed and Node 16 support has been deprecated. Node 16 may continue to work with Cypress
v13, but will not be supported moving forward to closer coincide with Node 16's end-of-life schedule. It is recommended that users update to at least Node 18.The minimum supported TypeScript version is
4.x.
Features:
Added
--runner-uiand--no-runner-uiCLI flags to control whether the Cypress Runner UI is visible during a run. Addressed in #27582.Consolidates and improves terminal output when uploading test artifacts to Cypress Cloud. Addressed in #27402
Bugfixes:
Fixed an issue where Cypress's internal
tsconfigwould conflict with properties set in the user'stsconfig.jsonsuch asmoduleandmoduleResolution. Fixes #26308 and #27448.Clarified Svelte 4 works correctly with Component Testing and updated dependencies checks to reflect this. It was incorrectly flagged as not supported. Fixes #27465.
Resolve the
process/browserglobal inside@cypress/webpack-batteries-included-preprocessorto resolve toprocess/browser.jsin order to explicitly provide the file extension. File resolution must include the extension for.mjsand.jsfiles inside ESM packages in order to resolve correctly. Fixes #27599.Fixed an issue where the correct
pnpprocess was not being discovered. Fixes #27562.Fixed incorrect type declarations for Cypress and Chai globals that asserted them to be local variables of the global scope rather than properties on the global object. Fixes #27539. Fixed in #27540.
Dev Servers will now respect and use the
portconfiguration option if present. Fixes #27675.
Dependency Updates:
Upgraded
@cypress/requestfrom^2.88.11to^3.0.0to address the CVE-2023-28155 security vulnerability. Addresses #27535. Addressed in #27495.