Cypress 3.0: in-browser end-to-end testing for modern apps

Cypress 3.0 (May 2018) by Brian Mann: JavaScript E2E testing framework that runs in the same browser event loop. Time travel debugging, auto-waiting, screenshots, video recording. Modern alternative to Selenium.

Open SourceWeb CypressTestingE2EBrian MannJavaScriptOpen SourceWeb

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-waitingcy.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 stubbingcy.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.

Need support? Under attack? Service Status
Need support? Under attack? Service Status