Playwright v1.34.0stable Released May 20, 2023
โš ๏ธ Breaking Change Impact Score: 7/10

Playwright v1.34.0 โ€” Release Notes & Engineering Impact

Source available โ€” automated, not human-reviewed

Component: playwright ยท Channel: stable. Automated analysis, not a compatibility certification. How this works.

Analysis updated: 2026-11-01.

Breaking-change evidence from the source

  • โš ๏ธ Breaking changes * `npx playwright test` no longer works if you install both `playwright` and `@playwright/test`. There's no need
Read the original context โ†—
Source flags breaking changes โ€” review applicability
๐Ÿ“„ .MD
โšก Executive Summary (TL;DR)

Playwright v1.34.0. Source highlight: Playwright v1.33 & v1.34 updates

Who Does This Impact? (Role-Based Analysis)

๐Ÿ’ป Software Engineers & Devs

Check the source notes against the package and APIs you use before upgrading.

๐Ÿ“Š Product & Engineering Leads

Use the documented changes to assess relevance to your product; release frequency alone is not a quality measure.

โš™๏ธ DevOps & Security

Verify the target version, runtime requirements and rollback procedure in the official documentation.

โš ๏ธ Breaking Changes & Deprecations (1)

  • โš ๏ธ Breaking changes * `npx playwright test` no longer works if you install both `playwright` and `@playwright/test`. There's no need
๐Ÿ“„ View Raw Release Notes (Original Developer Log)
<a href="https://youtu.be/JeFD6rqDbBo"><img src="https://github.com/microsoft/playwright/assets/746130/4e165491-1b1b-41c6-8674-4295622b66df" width=340></a> <a href="https://youtu.be/JeFD6rqDbBo">Playwright v1.33 & v1.34 updates</a> ### Highlights * UI Mode now shows steps, fixtures and attachments: <img src="https://github.com/microsoft/playwright/assets/746130/1d280419-d79a-4a56-b2dc-54d631281d56" width=640> * New property [`testProject.teardown`](https://playwright.dev/docs/api/class-testproject#test-project-teardown) to specify a project that needs to run after this and all dependent projects have finished. Teardown is useful to cleanup any resources acquired by this project. A common pattern would be a `setup` dependency with a corresponding `teardown`: ```js // playwright.config.ts import { defineConfig } from '@playwright/test'; export default defineConfig({ projects: [ { name: 'setup', testMatch: /global.setup\.ts/, teardown: 'teardown', }, { name: 'teardown', testMatch: /global.teardown\.ts/, }, { name: 'chromium', use: devices['Desktop Chrome'], dependencies: ['setup'], }, { name: 'firefox', use: devices['Desktop Firefox'], dependencies: ['setup'], }, { name: 'webkit', use: devices['Desktop Safari'], dependencies: ['setup'], }, ], }); ``` * New method [`expect.configure`](https://playwright.dev/docs/test-assertions#expectconfigure) to create pre-configured expect instance with its own defaults such as `timeout` and `soft`. ```js const slowExpect = expect.configure({ timeout: 10000 }); await slowExpect(locator).toHaveText('Submit'); // Always do soft assertions. const softExpect = expect.configure({ soft: true }); ``` * New options `stderr` and `stdout` in [`testConfig.webServer`](https://playwright.dev/docs/api/class-testconfig#test-config-web-server) to configure output handling: ```js // playwright.config.ts import { defineConfig } from '@playwright/test'; export default defineConfig({ // Run your local dev server before starting the tests webServer: { command: 'npm run start', url: 'http://127.0.0.1:3000', reuseExistingServer: !process.env.CI, stdout: 'pipe', stderr: 'pipe', }, }); ``` * New [`locator.and()`](https://playwright.dev/docs/api/class-locator#locator-and) to create a locator that matches both locators. ```js const button = page.getByRole('button').and(page.getByTitle('Subscribe')); ``` * New events [`browserContext.on('console')`](https://playwright.dev/docs/api/class-browsercontext#browser-context-event-console) and [`browserContext.on('dialog')`](https://playwright.dev/docs/api/class-browsercontext#browser-context-event-dialog) to subscribe to any dialogs and console messages from any page from the given browser context. Use the new methods [`consoleMessage.page()`](https://playwright.dev/docs/api/class-consolemessage#console-message-page) and [`dialog.page()`](https://playwright.dev/docs/api/class-dialog#dialog-page) to pin-point event source. ### โš ๏ธ Breaking changes * `npx playwright test` no longer works if you install both `playwright` and `@playwright/test`. There's no need to install both, since you can always import browser automation APIs from `@playwright/test` directly: ```js // automation.ts import { chromium, firefox, webkit } from '@playwright/test'; /* ... */ ``` * Node.js 14 is no longer supported since it [reached its end-of-life](https://nodejs.dev/en/about/releases/) on April 30, 2023. ### Browser Versions * Chromium 114.0.5735.26 * Mozilla Firefox 113.0 * WebKit 16.4 This version was also tested against the following stable channels: * Google Chrome 113 * Microsoft Edge 113