There’s a growing demand to create more polished user experiences in increasingly complex web applications. Making the jobs of QA engineers more important - and more difficult - than ever.
End-to-end tests are meant to simulate a user interacting with your website. Selenium took the approach of building browser plugins that allow tests to interact with the browser, similar to how a user would. Cypress tests run inside the browser with an accompanying Node.js process for observing and controlling the network. This gives Cypress insights into the application's execution that Selenium doesn't have.