2025: Cypress 14 knocked, Be a market leader once again with Cypress 15?
Hello Readers,
We are using several tools to automate the use-cases of web applications. Selenium, Cypress, and PlayWright are some of the names on the list that are streamlining our automation process. Cypress has just released version 14.0, which no longer supports older version dependencies. The primary goal of this release is to lighten the maintenance burden on the current team by discontinuing support for older dependencies as well as they are started to work and introduce new features in upcoming version 15.0. Based on the latest updates from the Cypress team, things are looking very promising, and Cypress may potentially become a game changer in the coming months. With this in mind, let’s dive into the full story behind Cypress and explore how it is poised to reclaim market leadership and top the list.
About cypress
As web applications become increasingly complex, the need for reliable and efficient end-to-end testing frameworks has never been greater. Cypress is an amazing framework for testing your frontend web applications. Cypress is a JavaScript-focused testing framework built with developers in mind. Known for its simplicity and speed, Cypress provides real-time test execution, automatic DOM waiting, and a highly interactive test runner. While it primarily targets Chromium-based browsers, its intuitive design and debugging tools make it a strong contender for projects using frameworks like React, Angular, and Vue. Custom commands is one of the best feature who provide significant benefits in test automation. By reducing redundancy and allowing reusable, readable code, they can cut down the time needed to create and maintain tests.
Cypress 14.0
In 2025 cypress team released new version 14.0 and requested to update your cypress with latest.
Cypress came with Enhanced Compoent Testing support with updated support with React,Angular,Next.js,Svelte and Vite. The compoent got faster, seamless and exciting. Cypress v14.0.0 improves performance of component testing and adds support for new framework and dev server versions. v14.0.0 also includes breaking changes to cy.origin
that are necessary to handle Chrome's deprecation of document.domain
injection, which should fix issues for some users in recent Chrome versions. Support for older versions of Node.js, Linux distributions, browsers and component testing frameworks and dev servers is removed.
They have discontinued support for older software versions in order to focus their team’s efforts on the upcoming launch, enhance Cypress, and better assist users.
Includes Chromium 130 for enhanced stability and performance.
Starting in Cypress 14, Cypress will officially support the latest 3 major versions of Chrome, Firefox, and Edge for best experience. Older browser versions may still work with Cypress, but we recommend keeping your browsers up to date to ensure compatibility with Cypress.
The resourceType
option on cy.intercept
has been deprecated in Cypress 14.0.0. We anticipate the types of the resourceType
to change in the future or be completely removed from the API.
In Cypress 13.14.0, we released an experimental flag, experimentalJustInTimeCompile, to enable Just in Time (JIT) compilation for Component Testing with vite and webpack. The response from this change was positive and They’ve made a few changes in response.
- JIT compilation is the default behavior for component tests as a
justInTimeCompile
component configuration option. - JIT compilation no longer applies with
vite
, since there is no benefit to enabling this withvite
.
If you would like to disable JIT compilation, you can do so by setting justInTimeCompile
to false
in your component configuration.
const { defineConfig } = require('cypress')
module.exports = defineConfig({
component: {
justInTimeCompile: false,
},
})
They no longer support React versions and Angular versions below 18 and below 17 respectively, so please update your React dependency to the latest version.
Navigating between subdomains? You’ll need to use cy.origin() now. If this change affects you, Cypress has introduced a temporary injectDocumentDomain option, but it’s already marked as deprecated. cy.origin()
now correctly errors when the cy.window()
, cy.document()
, cy.title()
, cy.url()
, cy.location()
, cy.hash()
, cy.go()
, cy.reload()
, and cy.scrollTo()
commands are used outside of the cy.origin()
command after the AUT has navigated away from the primary origin.
Surprises in version Cypress 15.0 to lead a market once again?
Cypress is used for both UI and API automation. While the tool has some limitations for automation testing, the Cypress team is planning some exciting updates in the upcoming version, possibly version 0.15, which could address these challenges.
Cypress automation testers are aware of these challenges and are currently finding workarounds to handle them effectively but as soon as possible cypress is giving better ways to handle those challenges.
- Multiple window handle: There are multiple workarounds for these limitations, but some issues, like handling multiple tabs, still remain a challenge in Cypress, unlike in Selenium or Playwright. However, the Cypress team may introduce a proper solution for handling multi-tab functionality in upcoming versions in 2025, Exactly! It seems like the wait may actually be worth it. The upcoming updates could bring some great improvements, so there's hope on the horizon.
- Iframe Support : Cypress has made significant strides in supporting iframes, and with the upcoming improvements, it looks like we will be able to use iframes more effectively and seamlessly. It’ll definitely make automation testing smoother for those scenarios.
- Stability and Flakiness : On this point, I don’t agree that Cypress is flaky or unstable every time. It offers a very smooth experience, which is why it ranks among the top three tools. The Cypress team has removed support for older versions to focus on delivering their best performance in upcoming releases, with a strong emphasis on stability and reducing flakiness.
- Fetching Text: There are multiple ways to fetch text in Cypress with the help of Jquery or other framework, but unlike Selenium and Playwright, which have built-in methods for this, and it looks very helpful in respective autmation. However, the team is planning to address this scenario and come up with more streamlined solutions to enhance the experience.
- Limited Support for File Downloads and Uploads: Cypress does support file downloads and uploads, but there are some challenges when dealing with applications that frequently require file downloads or uploads. These scenarios can be more complex to handle effectively so may be in the mid of this year we will see some improvements and news about the same.
- Multi Origin Testing : The next Cypress limitation is that performing multi-origin testing is not as easy as it can be done using Selenium. If your automation testing doesn’t involve switching from one domain to another or if it has a different port, problems will arise. Though the issue was partially addressed with version 12.0.0, and now in cypress 14.0.0 they are came with new update and in will expect some changes in next cypress version.
The Cypress team just wrapped up the demonstration of Cypress AI, and it looks very impressive and promising. Currently, Cypress has lower downloads compared to Playwright, and Playwright is working hard to surpass it and gain more traction. However, 2025 could be a great year for Cypress, as they may come up with some strong surprise updates that could break the market once again.
#StartTheDiscussion : Please share your feedback on this topic so that some new thoughts can emerge.
Hit the claps is a good idea to start positive thinking!!!!
Thank you.
ThoughtOfTheDay : Automation is good so long as you know exactly where to put machine.