Playwright architecture, selector reliability, and advanced interaction patterns.

Deep Dive Topics

Page 3 of 6

Debugging with Playwright Inspector and UI Mode

Debugging with Playwright Inspector and UI Mode The Trace Viewer explains a failure after it happened; the Inspector and UI mode let you debug a test while it runs. When you are a...

Reading Network and Console Tabs in Traces

Reading Network and Console Tabs in Traces A Playwright failure almost never reports the thing that actually broke. The runner prints Timed out 5000ms waiting for expect(locator)....

Managing Screenshot Baselines Across Platforms

Managing Screenshot Baselines Across Platforms A visual test that passes on your laptop and fails the moment it reaches CI is almost never a real regression. toHaveScreenshot() co...

Masking Dynamic Regions in Snapshots

Masking Dynamic Regions in Snapshots A screenshot assertion is a byte-level equality check dressed up as a UI test, and almost every real application contains a handful of pixels ...

Tuning Screenshot Comparison Thresholds

Tuning Screenshot Comparison Thresholds A visual test that fails on four pixels is as useless as one that passes over a collapsed layout, and most teams arrive at the second by ov...

Handling OAuth and SSO Redirects in Tests

Handling OAuth and SSO Redirects in Tests A test that signs in through Okta, Auth0, Microsoft Entra ID, or Google Workspace does not perform one navigation — it performs a chain o...

Reusing Login State with storageState

Reusing Login State with storageState A login form is the slowest, least interesting part of almost every end-to-end suite, and running it before each test multiplies a four-secon...

Setting Up an Auth Setup Project

Setting Up an Auth Setup Project A suite that logs in inside beforeEach pays the login cost once per test, hammers the identity provider from every worker at once, and turns a sin...

Testing Multiple User Roles in Parallel

Testing Multiple User Roles in Parallel Most authenticated applications behave differently for an administrator, an editor, and a read-only viewer, so a serious suite has to exerc...

Emulating Devices, Locales and Timezones

Emulating Devices, Locales and Timezones A checkout page that renders 1.234,50 € in Berlin and $1,234.50 in Chicago is running the same JavaScript against two different Intl confi...