Selenium isn’t enough anymore
Selenium (2004+) is the E2E testing standard: drives browsers via WebDriver, but is slow, flaky, hard to debug, with a verbose API. For React/Vue/Angular apps with complex state and async loading, Selenium tests are fragile.
The release
Cypress 3.0 is released by Cypress.io on 29 May 2018. Founder and leads: Brian Mann, Gleb Bahmutov. MIT licence for Open Source version. Commercial Cypress Dashboard recording tool.
Different architecture
Unlike Selenium, Cypress doesn’t use WebDriver. Tests run in the same JavaScript context as the tested application:
- No RPC latency
- Direct access to DOM, store, network
- Built-in auto-waiting (no more
sleep()) - Time travel debugging — snapshot at each command
describe('Login', () => {
it('logs in valid user', () => {
cy.visit('/login');
cy.get('[name=email]').type('ada@example.com');
cy.get('[name=password]').type('secret');
cy.contains('button', 'Login').click();
cy.url().should('include', '/dashboard');
});
});
Features
- Auto-waiting —
cy.get()waits for element automatically - Time travel — hover over step to see DOM state
- Real-time reload — save test → re-run
- Screenshots & video — on failure or always
- Network stubbing —
cy.intercept()for API mocks - Cross-browser — Chrome/Edge/Electron (Firefox upcoming from 4.x)
What’s new in 3.0
The 3.0 (May 2018) introduces a redesigned plugin system and a new Test Runner architecture, laying the groundwork for later releases.
Limitations
- No multi-tab — tests run in a single tab
- Cross-origin — limitations on navigating across domains
- Iframes — limited support
- Performance — faster than Selenium but slower than API tests
Competitors
- Selenium (2004) — legacy, dominant but with well-known flakiness
- TestCafe — similar, free tier
- Nightwatch.js — on WebDriver
- Protractor — Angular-specific
In the Italian context
Cypress is rapidly entering Italian frontend teams:
- Headless e-commerce for checkout validation
- Fintech for critical flows (login, transactions, KYC)
- B2B SaaS
- Digital PA — SPID/CIE login flow
- Bootcamps and modern frontend courses
References: Cypress 3.0 (29 May 2018). Brian Mann, Gleb Bahmutov, Cypress.io. MIT licence (core). In-browser architecture.
