Playwright MCP vs CLI vs Agents: What to Use in 2026
Playwright has three ways to talk to AI: MCP, CLI, and Test Agents. Here's the decision framework an enterprise SDET uses to pick the right one for 2026.
Playwright has three ways to talk to AI: MCP, CLI, and Test Agents. Here's the decision framework an enterprise SDET uses to pick the right one for 2026.
Playwright 1.59 ships a Screencast API with burned-in action annotations and chapter markers. Microsoft sells it for AI agents — the real win is CI triage.
How we built a Playwright API test data layer in Java — replacing UI setup that burned 150 minutes per run with 3 classes and a legacy API wrapping pattern.
Contract testing and API testing look similar but they catch very different bugs. Here's where contract testing fits next to unit, API, and E2E tests.
Thread-level parallelism demands ThreadLocal and full framework rewrites. Process-level parallelism doesn't. Here's the difference and when to use each.
Most Playwright teams still use CSS selectors via locator() out of habit. getByRole and getByText find elements the way users do — and survive redesigns.
How shared test accounts create race conditions in parallel Playwright runs, and the 3 isolation patterns that eliminated our 12% failure rate overnight.
Launching a new browser per test in Playwright wastes 3-6 seconds each time. BrowserContext gives you the same isolation in milliseconds. Here's how to switch.
storageState() saves cookies, localStorage, and sessionStorage in one blob. Here's how it silently poisons parallel tests and how to strip it to cookies only.
We build the exact same Java test in both Selenium and Playwright side by side. See the real code differences in setup, locators, network mocking, and debugging
Your UI tests pass green while the console throws errors. Learn to catch JavaScript and page errors in Selenium and Playwright Java — before users do.
Parallelism alone won't save your slow test suite. Here are five layers of optimization — from test design to cloud infrastructure — ranked by real impact.
Most self-healing test tools use simple fallback chains, not real AI. Learn the 4 approaches to AI locator repair and which one fits your framework best.
Handling unexpected alerts or removing assertions to make tests pass doesn't fix anything — it buries bugs. Here's how to spot and stop these patterns.
Why onceDialog stays registered when no dialog fires, silently eating the next dialog from an unrelated action — and the onDialog/offDialog pattern that fixes it.
How UnhandledAlertException broke 8-thread parallel execution and why Playwright's event-driven dialog model avoids that entire failure pattern in practice.
How onceDialog fixes permanent handler leaks from onDialog — and the one case where it creates a new problem. Includes the onDialog/offDialog pattern for dialogs that might not fire.
Use Cucumber squad tags and Extent Reports to route test failures to the right team automatically, with full implementation details for Appium projects.
Why text-based locators reduce test maintenance by up to 60%, and how to use them in Selenium and Playwright with real enterprise UI examples that last.
Why your API testing patterns fail for webhooks, and the listener-based strategy that fixed our CI pipeline after a full week of production-style debugging.
A practical guide to writing tests that catch broken behavior, fail for useful reasons, and keep earning trust in noisy enterprise CI pipelines over time.
An honest take on Cypress vs Playwright migrations from an SDET who's done three, including the signals that tell you not to migrate your suite just yet.
The 3 async mistakes that cause flaky Playwright tests after a Selenium migration, and how we fixed a 23% intermittent failure rate in our CI pipeline.
How a shared WebDriver instance caused phantom failures in our 800-test parallel suite, and the ThreadLocal pattern that finally stabilized the whole run.
The real difference between XPath text(), dot, contains(), and normalize-space() for test automation — with examples that explain real flaky failures.
Search is not available in dev mode.
Run npm run build then
npm run preview:local to test search locally.