Home / Blog

Playwright, written down

What we learned building and repairing these suites, including the parts that make a bad afternoon.

Choosing a framework

  • What Playwright does not do

    Every limit with its source, and not one of them is a compliment wearing a disadvantage's clothes.

  • Playwright vs Selenium

    Not which is better — what breaks when you move a suite you already have, and the four places Selenium still wins.

  • Playwright vs Cypress

    The differences are architectural, and each one has a price. Where Cypress is better, said plainly.

  • Playwright vs Puppeteer

    A library against a test framework, which is not a fair fight and not the question — so here is the one worth asking.

  • Playwright vs WebdriverIO

    One arrives whole, one is assembled from services and reporters. And one of them reaches a native app.

  • TypeScript or Python?

    Same browser API in both. The test runner is Node-only, and that is the whole decision.

Getting started

Writing tests

Running them at scale

  • Workers, shards, and where each stops paying

    A scaling curve measured on one machine, and the arithmetic for the shard count from two numbers you time yourself.

  • Playwright in GitHub Actions

    The docs’ workflow goes green on the first push. Week two is the bill: pull request against nightly, shards, and who reads a red job.

  • Reading a failing CI run

    The build is red, the machine is gone, and the trace is the only witness left.

  • Which reporter, and who reads it

    Four readers, one reporter array that serves all four, and what the HTML report does not render off the file system.

  • Playwright in Docker

    The official image is usually the whole job, until its tag and the version in your project disagree.

  • Playwright vs TestCafe

    TestCafe stopped defaulting to its proxy in 3.0, and the browser string still decides which mechanism the whole run gets.

  • The Playwright MCP server

    Twenty-four tools out of the box, 68 with capabilities on, and a --help that names three of the eight.

  • Playwright cheat sheet

    The locators, assertions and CLI flags worth keeping open in a tab, every one of them run against 1.62.1.

  • Playwright interview questions

    Eight questions an interviewer can actually score, and what a good answer sounds like when the candidate has done the work.

  • Mobile emulation

    A viewport, a user agent and a touch flag in a desktop engine. What that catches, and the things it cannot.

  • The library or the runner

    Two packages, and a working `playwright test` command is no evidence you have the one you think you have.

  • Onboarding a team

    The first weeks, the conventions worth fixing early, and the two checks that do not cover for each other.

Reading this because something is flaky?

Send the suite and the last week of CI runs. Flaky-test remediation starts there.