NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
npm · #1294 most downloaded on npm
A high-level API to automate web browsers
Last release today
06 Oct 2026
Ships on a steady schedule
a new release about every 8 days
Nearly every release is documented
notes for 60 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
9 years old
5717 releases · first in 2017
Nothing published for this version
Nothing published for this version
Nothing published for this version
One column per quarter.
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
This patch includes the following bug fix:
This patch includes the following bug fix:
https://github.com/microsoft/playwright/issues/15717 - [REGRESSION]: Suddenly stopped working despite nothing having changed (experimentalLoader.js:load did not call the next hook in its chain and did not explicitly signal a short circuit)
This version was also tested against the following stable channels:
Nothing published for this version
This patch includes the following bug fixes:
This patch includes the following bug fixes:
https://github.com/microsoft/playwright/issues/15557 - [REGRESSION]: Event Listeners not being removed if same handler is used for different events
This version was also tested against the following stable channels:
Nothing published for this version
Nothing published for this version
This patch includes the following bug fixes:
This patch includes the following bug fixes:
https://github.com/microsoft/playwright/issues/15273 - [BUG] LaunchOptions config has no effect after update to v1.23.0 https://github.com/microsoft/playwright/issues/15351 - [REGRESSION]: Component testing project does not compile anymore https://github.com/microsoft/playwright/issues/15431 - [BUG] Regression: page.on('console') is ignored in 1.23
This version was also tested against the following stable channels:
Nothing published for this version
Nothing published for this version
This patch includes the following bug fixes:
This patch includes the following bug fixes:
https://github.com/microsoft/playwright/issues/15219 - [REGRESSION]: playwright-core 1.23.0 issue with 'TypeError [ERR_INVALID_ARG_TYPE]: The "listener" argument'
This version was also tested against the following stable channels:
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Now you can record network traffic into a HAR file and re-use the data in your tests.
<a href="https://youtu.be/NRGOV46P3kU"><img src="https://user-images.githubusercontent.com/746130/177854522-a07f4701-9528-4bf9-bf0f-30fbdfb04c8c.png" width=340></a> <a href="https://youtu.be/NRGOV46P3kU">Playwright v1.23 updates</a>
Now you can record network traffic into a HAR file and re-use the data in your tests.
To record network into HAR file:
npx playwright open --save-har=github.har.zip https://github.com/microsoft
Alternatively, you can record HAR programmatically:
const context = await browser.newContext({
recordHar: { path: 'github.har.zip' }
});
// ... do stuff ...
await context.close();
Use the new methods page.routeFromHAR() or browserContext.routeFromHAR() to serve matching responses from the HAR file:
await context.routeFromHAR('github.har.zip');
Read more in our documentation.
You can now use route.fallback() to defer routing to other handlers.
Consider the following example:
// Remove a header from all requests.
test.beforeEach(async ({ page }) => {
await page.route('**/*', route => {
const headers = route.request().headers();
delete headers['if-none-match'];
route.fallback({ headers });
});
});
test('should work', async ({ page }) => {
await page.route('**/*', route => {
if (route.request().resourceType() === 'image')
route.abort();
else
route.fallback();
});
});
Note that the new methods page.routeFromHAR() and browserContext.routeFromHAR() also participate in routing and could be deferred to.
expect(locator).toHaveValues() that asserts all selected values of <select multiple> element.expect(locator).toContainText() and expect(locator).toHaveText() now accept ignoreCase option.@playwright/experimental-ct-vue2 package..js files.Read more about component testing with Playwright.
serviceWorkers:// playwright.config.ts
export default {
use: {
serviceWorkers: 'block',
}
}
.zip path for recordHar context option automatically zips the resulting HAR:const context = await browser.newContext({
recordHar: {
path: 'github.har.zip',
}
});
"minimal" HAR recording mode
that only records information that is essential for replaying:const context = await browser.newContext({
recordHar: {
path: 'github.har.zip',
mode: 'minimal',
}
});
mcr.microsoft.com/playwright:v1.23.0-focal.WebServer is now considered "ready" if request to the specified port has any of the following HTTP status codes:
200-299300-399 (new)400, 401, 402, 403 (new)Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →