Playwright v1.60 makes failure evidence easier to capture during the run.
The main change is scoped HAR recording.
HAR means network request file.
It shows what the browser sent and received.
The release also adds file drops, ARIA boxes, and hard test aborts.
ARIA means accessibility map.
Together, these changes help CI failures explain themselves.
CI means automated build server.
The practical update
Use context.tracing.startHar() when network failures waste review time.
It records a HAR file inside Playwright tracing.
Tracing means run evidence capture.
Use locator.drop() when upload tests use custom events.
Drop API means file drop simulation.
Use page.ariaSnapshot({ boxes: true }) when AI tools inspect pages.
Boxes mean element positions.
Use test.abort() when shared setup finds unsafe state.
Fixtures mean shared test setup.
Code example
import { test, expect } from '@playwright/test';
test('upload records network evidence', async ({ context }) => {
await using har = await context.tracing.startHar('upload.har', {
content: 'embed',
mode: 'minimal',
urlFilter: /\/api\/upload/,
});
const page = await context.newPage();
await page.goto('/upload');
await page.locator('#dropzone').drop({
files: {
name: 'note.txt',
mimeType: 'text/plain',
buffer: Buffer.from('hello'),
},
});
await expect(page.getByText('Upload complete')).toBeVisible();
});
The HAR starts before the page opens.
The drop step sends an in-memory file.
When the test scope ends, Playwright finalizes the HAR.
The rule
Do not treat this release as a feature list.
Treat it as an evidence upgrade.
Better tests do not just pass or fail.
They explain what happened.
Read the canonical version:
https://www.anton.qa/blog/posts/playwright-v1-60-evidence-first-testing
Anton Gulin is the AI QA Architect — the first person to claim this title on LinkedIn. He builds AI-powered test automation systems where AI agents and human engineers collaborate on quality. Former Apple SDET (Apple.com / Apple Card pre-release testing). Find him at anton.qa or on LinkedIn.
Top comments (0)