Playwright

Latest version: v1.50.0

Safety actively analyzes 715032 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 6 of 28

1.38.1

Highlights

1.38

`playwright` and `playwright/test` packages do not download browsers during `npm install`.

**Recommended migration**

Run `npx playwright install` to download browsers after `npm install`. For example, in your CI configuration:

yml
- run: npm ci
- run: npx playwright install --with-deps


**Alternative migration option - not recommended**

Add `playwright/browser-chromium`, `playwright/browser-firefox` and `playwright/browser-webkit` as a dependency. These packages download respective browsers during `npm install`. Make sure you keep the version of all playwright packages in sync:

json5
// package.json
{
"devDependencies": {
"playwright": "1.38.0",
"playwright/browser-chromium": "1.38.0",
"playwright/browser-firefox": "1.38.0",
"playwright/browser-webkit": "1.38.0"
}
}


Browser Versions

* Chromium 117.0.5938.62
* Mozilla Firefox 117.0
* WebKit 17.0

This version was also tested against the following stable channels:

* Google Chrome 116
* Microsoft Edge 116


[`browserContext.on('weberror')`]: https://playwright.dev/docs/api/class-browsercontext#browser-context-event-web-error
[`locator.pressSequentially()`]: https://playwright.dev/docs/api/class-locator#locator-press-sequentially
[`reporter.onEnd()`]: https://playwright.dev/docs/api/class-reporter#reporter-on-end
[`page.type()`]: https://playwright.dev/docs/api/class-page#page-type
[`frame.type()`]: https://playwright.dev/docs/api/class-frame#frame-type
[`locator.type()`]: https://playwright.dev/docs/api/class-locator#locator-type
[`elementHandle.type()`]: https://playwright.dev/docs/api/class-elementhandle#element-handle-type
[`locator.fill()`]: https://playwright.dev/docs/api/class-locator#locator-fill
[`expect(value).toMatchSnapshot()`]: https://playwright.dev/docs/api/class-snapshotassertions#snapshot-assertions-to-match-snapshot-1
[`expect(page).toHaveScreenshot()`]: https://playwright.dev/docs/api/class-pageassertions#page-assertions-to-have-screenshot-1
[`expect(locator).toHaveScreenshot()`]: https://playwright.dev/docs/api/class-locatorassertions#locator-assertions-to-have-screenshot-1

1.38.0

UI Mode Updates

![Playwright UI Mode](https://github.com/microsoft/playwright/assets/746130/8ba27be0-58fd-4f62-8561-950480610369)

1. Zoom into time range.
2. Network panel redesign.

New APIs

- [`browserContext.on('weberror')`]
- [`locator.pressSequentially()`]
- The [`reporter.onEnd()`] now reports `startTime` and total run `duration`.

Deprecations

- The following methods were deprecated: [`page.type()`], [`frame.type()`], [`locator.type()`] and [`elementHandle.type()`].
Please use [`locator.fill()`] instead which is much faster. Use [`locator.pressSequentially()`] only if there is a
special keyboard handling on the page, and you need to press keys one-by-one.

Breaking Changes: Playwright no longer downloads browsers automatically

> [!NOTE]
> If you are using `playwright/test` package, this change **does not** affect you.


Playwright recommends to use `playwright/test` package and download browsers via `npx playwright install` command. If you are following this recommendation, nothing has changed for you.

However, up to v1.38, installing the `playwright` package instead of `playwright/test` did automatically download browsers. This is no longer the case, and we recommend to explicitly download browsers via `npx playwright install` command.

1.37.1

Highlights

https://github.com/microsoft/playwright/issues/26496 - [REGRESSION] webServer stdout is always getting printed
https://github.com/microsoft/playwright/issues/26492 - [REGRESSION] test.only with project dependency is not working

Browser Versions

* Chromium 116.0.5845.82
* Mozilla Firefox 115.0
* WebKit 17.0

This version was also tested against the following stable channels:

* Google Chrome 115
* Microsoft Edge 115

1.37

`playwright` package was downloading browsers during `npm install`, while `playwright/test` was not.

1.37.0

<a href="https://youtu.be/cEd4SH_Xf5U"><img src="https://github.com/microsoft/playwright/assets/746130/3a3cc6c3-b0f8-4a31-b1a3-a85bf5d93ac5" width=340></a>

<a href="https://youtu.be/cEd4SH_Xf5U">Watch the overview: Playwright 1.36 & 1.37</a>

✨ New tool to merge reports

If you run tests on multiple shards, you can now merge all reports in a single HTML report (or any other report)
using the new `merge-reports` CLI tool.

Using `merge-reports` tool requires the following steps:

1. Adding a new "blob" reporter to the config when running on CI:

js title="playwright.config.ts"
export default defineConfig({
testDir: './tests',
reporter: process.env.CI ? 'blob' : 'html',
});


The "blob" reporter will produce ".zip" files that contain all the information
about the test run.

2. Copying all "blob" reports in a single shared location and running `npx playwright merge-reports`:

bash
npx playwright merge-reports --reporter html ./all-blob-reports


Read more in [our documentation](https://playwright.dev/docs/test-sharding).

📚 Debian 12 Bookworm Support

Playwright now supports Debian 12 Bookworm on both x86_64 and arm64 for Chromium, Firefox and WebKit.
Let us know if you encounter any issues!

Linux support looks like this:

| | Ubuntu 20.04 | Ubuntu 22.04 | Debian 11 | Debian 12 |
| :--- | :---: | :---: | :---: | :---: |
| Chromium | ✅ | ✅ | ✅ | ✅ |
| WebKit | ✅ | ✅ | ✅ | ✅ |
| Firefox | ✅ | ✅ | ✅ | ✅ |

🌈 UI Mode Updates

- UI Mode now respects project dependencies. You can control which dependencies to respect by checking/unchecking them in a projects list.
- Console logs from the test are now displayed in the Console tab.

Browser Versions

* Chromium 116.0.5845.82
* Mozilla Firefox 115.0
* WebKit 17.0

This version was also tested against the following stable channels:

* Google Chrome 115
* Microsoft Edge 115

Page 6 of 28

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.