A curated newsletter bringing you the latest Playwright tutorials, updates, and community insights, every week.

Subscribe today

Receive each digest directly to your inbox and get access to all past digests.

jamie@example.com
Playwright Weekly

#23 Digest

This week’s lineup dives into tackling Playwright challenges head-on—from scaling component tests in massive codebases to smarter CI workflows that cut down flaky runs and test bloat. You’ll also find clever strategies for isolating tests with feature flags and customizing your own reporters, plus fresh takes on maintaining browser profile state and next-level QA experiments pushing automation forward.


News

Playwright's New --last-failed-file Flag: Re-Run Only Failed Tests in GitHub Actions

Explains how Playwright v1.61’s new `--last-failed-file` flag makes CI retries cleaner for sharded GitHub Actions workflows. It walks through cache-key design, save/restore steps, and the edge cases involved in rerunning only failed tests.

6 mins
currents.dev

Guides

Playwright Component Testing in Large Frontend Codebases

A practical deep dive into Playwright Component Testing for large codebases, covering the Node/browser boundary, versioning risks, monorepo config, provider setup, network mocking, and CI scaling. It also gives clear guidance on when CT adds value versus sticking with Jest, E2E, or Storybook-based alternatives.

18 mins
currents.dev

Playwright Custom Reporters: Build Your Own

A deep dive into building production-grade Playwright custom reporters, covering the full Reporter API, retry-safe failure handling, parallel/sharded execution, attachment lifecycles, and how to test reporters so they don’t silently fail in CI. It also explains when blob+merge-reports is enough versus when a custom reporter has crossed into platform territory.

18 mins
currents.dev

How to Diff Browser Profile State Before Reusing It in Playwright

This article shows how to detect drift in reusable browser profile state before running a Playwright task. It proposes taking a lightweight snapshot of cookies, local storage, timezone, language, and registry metadata, then routing profiles to run, review, or quarantine based on severity.

6 mins
dev.to

A Tiered Playwright E2E Strategy: From PR Smoke to Production Validation

A practical field write-up on structuring a large Playwright E2E suite with domain-partitioned projects, orthogonal tagging for traceability vs. run tiers, worker tuning, and separate lanes for smoke, regression, production validation, and endurance tests. It’s especially useful for teams trying to keep PR feedback fast without sacrificing coverage or production safety.

8 mins
dev.to

Playwright + Feature Flags: Advanced Test Isolation Strategies

A deep dive into making Playwright suites deterministic when feature flags are involved. It covers route-level SDK interception, fixture-based flag state, worker-scoped identity isolation, project matrices for variants, and the operational pitfalls of live flag mutation in parallel CI.

18 mins
currents.dev

How to Prevent Two Workers From Using the Same Browser Profile

This article explains how to prevent multiple workers from corrupting shared browser Profile state by using per-Profile locks, leases, heartbeats, and conflict-aware scheduling. It also covers when exclusive locking is necessary, how to preserve failure evidence before releasing a lock, and how to model Profile ownership in task manifests.

7 mins
dev.to

QA Experiments That Actually Matter: Browser Automation, AI Agents, and CI Reality

A practical survey of QA experimentation around browser automation, CI flakiness, mocked APIs, contract tests, React hydration, feature flags, and AI-assisted test generation. It frames these topics as production reliability problems rather than tutorial basics, with useful guidance on how to measure and debug them.

9 mins
dev.to

Why Your Playwright Tests Fail in CI (And Never Locally)?

A practical guide to reducing Playwright flakiness in CI by using dependency projects, API-based auth, web-first assertions, trace viewer, and selective network blocking. It also explains when to use expect.poll/toPass and how to avoid force: true and waitForTimeout anti-patterns.

9 mins
dev.to

How We Halved Our Playwright E2E Suite

A practical post on shrinking a flaky Playwright E2E suite by replacing UI-driven setup with API calls, using programmatic auth, and asserting persisted state through backend polling instead of fixed waits or DOM-only checks. It also covers how to identify redundant tests and where UI tests should stop doing setup work.

4 mins
dev.to

Latest issue