8.7.0

Released Released on October 24, 2021

Features:

  • There are changes to how "slow" tests are determined and displayed in Cypress. Addresses #18496.

    • Added a slowTestThreshold configuration option to customize when tests are considered "slow" during cypress run. A test that runs slower than the given threshold will display in orange text in the default 'spec' reporter. This configuration can be set in your Cypress config file or via specific test configuration.

    • The default slow test threshold was changed from 75ms (Mocha's default) to 10000ms for e2e tests and 250ms for component tests. To restore the old behavior, you can add "slowTestThreshold": 75 to your Cypress config file.

    • All tests will show the time the test ran in milliseconds during cypress run with the default 'spec' reporter.

  • Users can pass an overwrite: true option to Cypress.Screenshot.defaults to change default behavior to overwrite existing screenshots without having to set overwrite for each cy.screenshot() command. Addresses #7955.

Bugfixes:

  • Fixed a regression introduced in 8.6.0 where videos recorded in Electron to the Dashboard were not playable in the Firefox or Safari browser and were not compatible with QuickTime player in MacOS.

  • Fixed a regression introduced in 8.6.0 so that the warning about the projectRoot directory not being writeable will now display correctly. Fixes #18485.

  • Improved the error message when running Cypress without non-root permissions. Fixes #18445.

  • An error now throws when invalid options are passed to the selectorPriority configuration option of Cypress.SelectorPlayground.defaults. Valid values are data-*, id, class, tag, attribute, or nth-child. Fixes #7745.

Dependency Updates:

  • Pinned resolution of ua-parser-js to 0.7.24 to avoid dependency resolution to the compromised package versions. Please read the security advisory and take actions advised as soon as possible. Addressed in #18611