From the Puppeteer team to Microsoft
The original team of Puppeteer (Google, 2017, Chrome-only headless automation) leaves Google and regroups at Microsoft in 2019. Goal: build a true cross-browser successor, not just Chromium. Playwright is born.
The release
Playwright 1.0 is released by Microsoft on 29 July 2020. Apache 2.0 licence. Supports Chromium, Firefox, WebKit (Safari engine) with a single API.
import { test, expect } from '@playwright/test';
test('search', async ({ page }) => {
await page.goto('https://example.com');
await page.getByRole('searchbox').fill('playwright');
await page.getByRole('button', { name: 'Search' }).click();
await expect(page).toHaveTitle(/Playwright/);
});
Features
- Multi-browser — Chromium, Firefox, WebKit
- Multi-language — TypeScript/JavaScript (primary), Python, .NET, Java
- Auto-wait — built-in for elements, network idle
- Web-first assertions — automatic retry
- Native parallel execution (workers)
- Tracing & inspector — time-travel debug
- Multi-tab, multi-context, multi-origin supported
- Network interception —
page.route()for mocks - Mobile emulation — viewport, touch, geolocation
- Codegen — record and generate tests from browser
- Accessibility tree — robust locators (
getByRole)
Vs Cypress
Playwright has advantages over Cypress:
- Multi-tab/origin without limitations
- Real WebKit (Safari) vs browser-based
- Native parallelism instead of manual split
- No browser sandbox restrictions
Cypress has advantages:
- Slightly simpler DX for single dev
- Historical time travel UI
- Less setup for small projects
Versions
- 1.0 (July 2020) — first stable
- 1.10 (March 2021) — official Playwright Test runner
- 1.20 (March 2022) — modern locators API
- 1.35 (June 2023) — UI mode (Cypress-like GUI)
- 1.40+ (2024-2025) — continuous improvements, stable component testing
Component Testing
Playwright Component Testing (in experimental 1.35+): isolated React/Vue/Svelte/Solid rendering in real browser.
Adoption 2024-2026
Playwright has surpassed Cypress in new projects in 2023-2024 according to various surveys (State of JS, npm downloads trend).
Companies publicly using it: Microsoft, Stripe, GitHub, VSCode team, Netlify, Vercel.
In the Italian context
Playwright is chosen by:
- New frontend teams starting TypeScript-first
- E-commerce requiring real Safari testing
- Banking web for regulatory cross-browser coverage
- Digital PA — projects testing SPID on multiple browsers
- Cypress migration in teams with extensive automation budget
References: Playwright 1.0 (29 July 2020). Microsoft. Apache 2.0 licence. Ex-Puppeteer Google team. Chromium, Firefox, WebKit support. Multi-language: TS/JS, Python, .NET, Java. Integrated Playwright Test runner.
