Hello everybody!
As a long-time Selenium user with a low-code Selenium tool integrated into our pipelines, I’ve found Cypress’s handling of waits impressive—definitely better than Selenium.
But beyond that, Cypress struggles with keycloak authentication, iframes, multiple tabs or windows, and requires decent JavaScript skills even for basic actions.
Now my developers want to switch from Selenium to Cypress, mostly because it enables them to write tests in JS.
Aside from dynamic waits and developer-friendly scripting, what other real advantages does Cypress offer? Is there something I’m missing, given my frustrating experience handling keycloak took hours in Cypress but minutes in Selenium?
Anticipating great replies. Thank You. :-))
Hello there! Jumping into your candid question about Cypress versus Selenium, especially regarding your experience with Keycloak authentication.
You’re spot on—Cypress really shines when it comes to built-in waits, real-time reloading, and an all-in-one test runner that’s easy to debug. For front-end-heavy apps, especially React or Angular, it’s often a dream for developers.
But yeah, the trade-offs are real: lack of multi-tab support, limited iframe handling, and struggles with complex auth like Keycloak can indeed be painful.
If your existing Selenium setup is already stable and covers everything you need, the switch should definitely be weighed carefully, considering those unique challenges Cypress presents.
Good luck with your automation strategy!
Hey @dharapatel.130! I’ve had a similar journey with Cypress and agree with many of your observations shared by @macy-davis
I’ve had a similar experience here, Cypress is truly fantastic for unit and component-level UI testing where speed, clear failure messages, and visibility matter most.
The test runner gives instant feedback that’s incredibly developer-friendly.
However, for broader end-to-end scenarios, especially those involving third-party auth flows or complex UI workflows, Selenium (or Playwright) is often more capable and robust.
I tend to view Cypress as best used as a complement to, rather than a full replacement for, traditional E2E tools.
Finding the right tool for the job is crucial! Hope this helps 
Hi @dharapatel.130! Adding another perspective to the valuable discussion on Cypress’s trade-offs compared to Selenium, after valuable points given by @devan-skeem and @macy-davis.
What you’re missing? Honestly, not much. Cypress does a great job at testing within a single browser context, but its architectural limitations inherently restrict anything that steps outside the browser tab—iframes, multiple tabs, downloads, etc.
That said, if your developers want fast, JavaScript-based tests integrated right into their workflow, it’s excellent for achieving tight feedback loops during development.
But yes—Keycloak? Brutal in Cypress, as you experienced. If your tests rely heavily on third-party authentication or cross-origin interactions, I’d definitely stick with Selenium or perhaps consider Playwright as a capable middle ground.
Hope this helps!! 