Playwright Release Notes

Last updated: Dec 11, 2025

  • Nov 28, 2025
    • Parsed from source:
      Nov 28, 2025
    • Detected by Releasebot:
      Dec 11, 2025

    Playwright by Microsoft

    v1.57.0

    Playwright rolls out a Speedboard to highlight slow tests and switches Chrome for Testing builds with a small UI update. The release adds new APIs and config options, enhances service worker network/console reporting, and deprecates Page#accessibility in favor of Axe. Browser versions updated.

    Speedboard

    In HTML reporter, there's a new tab we call "Speedboard":
    It shows you all your executed tests sorted by slowness,
    and can help you understand where your test suite is taking longer than expected.
    Take a look at yours - maybe you'll find some tests that are spending a longer time waiting than they should!

    Chrome for Testing

    Starting with this release, Playwright switches from Chromium, to using Chrome for Testing builds. Both headed and headless browsers are subject to this. Your tests should still be passing after upgrading to Playwright 1.57.
    We're expecting no functional changes to come from this switch. The biggest change is the new icon and title in your toolbar.
    If you still see an unexpected behaviour change, please file an issue.

    On Arm64 Linux

    Playwright continues to use Chromium.

    Waiting for webserver output

    testConfig.webServer added a wait field. Pass a regular expression, and Playwright will wait until the webserver logs match it.

    import { defineConfig } from '@playwright/test';
    export default defineConfig({
      webServer: {
        command: 'npm run start',
        wait: {
          stdout: '/Listening on port (?<my_server_port>\\d+)/'
        },
      },
    });
    

    If you include a named capture group into the expression, then Playwright will provide the capture group contents via environment variables:

    import { test, expect } from '@playwright/test';
    test.use({ baseUrl: `http://localhost:${process.env.MY_SERVER_PORT ?? 3000}` });
    test('homepage', async ({ page }) => {
      await page.goto('/');
    });
    

    This is not just useful for capturing varying ports of dev servers. You can also use it to wait for readiness of a service that doesn't expose an HTTP readiness check, but instead prints a readiness message to stdout or stderr.

    Breaking Change

    After 3 years of being deprecated, we removed Page#accessibility from our API. Please use other libraries such as Axe if you need to test page accessibility. See our Node.js guide for integration with Axe.

    New APIs

    New property testConfig.tag adds a tag to all tests in this run. This is useful when using merge-reports.
    worker.on('console') event is emitted when JavaScript within the worker calls one of console API methods, e.g. console.log or console.dir. worker.waitForEvent() can be used to wait for it.
    locator.description() returns locator description previously set with locator.describe(), and Locator.toString() now uses the description when available.
    New option steps in locator.click() and locator.dragTo() that configures the number of mousemove events emitted while moving the mouse pointer to the target element.
    Network requests issued by Service Workers are now reported and can be routed through the BrowserContext, only in Chromium. You can opt out using the PLAYWRIGHT_DISABLE_SERVICE_WORKER_NETWORK environment variable.
    Console messages from Service Workers are dispatched through worker.on('console'). You can opt out of this using the PLAYWRIGHT_DISABLE_SERVICE_WORKER_CONSOLE environment variable.

    Browser Versions

    • Chromium 143.0.7499.4
    • Mozilla Firefox 144.0.2
    • WebKit 26.0
    Original source Report a problem
  • Oct 17, 2025
    • Parsed from source:
      Oct 17, 2025
    • Detected by Releasebot:
      Dec 11, 2025

    Playwright by Microsoft

    v1.56.1

    Highlights

    • #37871 chore: allow local-network-access permission in chromium
    • #37891 fix(agents): remove workspaceFolder ref from vscode mcp
    • #37759 chore: rename agents to test agents
    • #37757 chore(mcp): fallback to cwd when resolving test config

    Browser Versions

    • Chromium 141.0.7390.37
    • Mozilla Firefox 142.0.1
    • WebKit 26.0
    Original source Report a problem
  • Oct 7, 2025
    • Parsed from source:
      Oct 7, 2025
    • Detected by Releasebot:
      Dec 11, 2025

    Playwright by Microsoft

    v1.56.0

    Playwright introduces Playwright Agents, guiding LLMs through planning, generating, and repairing tests with agent loops in VS Code and other loops. New APIs, UI improvements, and reporter options expand testing workflows across Chromium, Firefox, and WebKit.

    Playwright Agents

    Introducing Playwright Agents, three custom agent definitions designed to guide LLMs through the core process of building a Playwright test:
    🎭 planner explores the app and produces a Markdown test plan
    🎭 generator transforms the Markdown plan into the Playwright Test files
    🎭 healer executes the test suite and automatically repairs failing tests

    Run npx playwright init-agents with your client of choice to generate the latest agent definitions:

    • Generate agent files for each agentic loop
      • Visual Studio Code
        npx playwright init-agents --loop=vscode
        
      • Claude Code
        npx playwright init-agents --loop=claude
        
      • opencode
        npx playwright init-agents --loop=opencode
        

      Note
      VS Code v1.105 (currently on the VS Code Insiders channel) is needed for the agentic experience in VS Code. It will become stable shortly, we are a bit ahead of times with this functionality!

    Learn more about Playwright Agents

    New APIs

    New methods page.consoleMessages() and page.pageErrors() for retrieving the most recent console messages from the page
    New method page.requests() for retrieving the most recent network requests from the page
    Added --test-list and --test-list-invert to allow manual specification of specific tests from a file

    UI Mode and HTML Reporter

    Added option to 'html' reporter to disable the "Copy prompt" button
    Added option to 'html' reporter and UI Mode to merge files, collapsing test and describe blocks into a single unified list
    Added option to UI Mode mirroring the --update-snapshots options
    Added option to UI Mode to run only a single worker at a time

    Breaking Changes

    Event browserContext.on('backgroundpage') has been deprecated and will not be emitted. Method browserContext.backgroundPages() will return an empty list

    Miscellaneous

    Aria snapshots render and compare input placeholder
    Added environment variable PLAYWRIGHT_TEST to Playwright worker processes to allow discriminating on testing status

    Browser Versions

    Chromium 141.0.7390.37
    Mozilla Firefox 142.0.1
    WebKit 26.0

    Original source Report a problem
  • Oct 6, 2025
    • Parsed from source:
      Oct 6, 2025
    • Detected by Releasebot:
      Dec 11, 2025

    Playwright by Microsoft

    v1.55.1

    Highlights

    • #37479 - [Bug]: Upgrade Chromium to 140.0.7339.186.
    • #37147 - [Regression]: Internal error: step id not found.
    • #37146 - [Regression]: HTML reporter displays a broken chip link when there are no projects.
    • #37137 - Revert "fix(a11y): track inert elements as hidden".
    • #37532 - chore: do not use -k option

    Browser Versions

    • Chromium 140.0.7339.186
    • Mozilla Firefox 141.0
    • WebKit 26.0

    This version was also tested against the following stable channels:

    • Google Chrome 139
    • Microsoft Edge 139
    Original source Report a problem
  • Aug 20, 2025
    • Parsed from source:
      Aug 20, 2025
    • Detected by Releasebot:
      Dec 11, 2025

    Playwright by Microsoft

    v1.55.0

    New APIs add testStepInfo.titlePath to reveal the full test and step title path. Codegen now auto‑generates toBeVisible() assertions for common UI interactions, toggleable in Codegen settings. Note the breaking change: Chromium extension manifest v2 is dropped; Debian 13 Trixie support added.

    New APIs

    New Property testStepInfo.titlePath Returns the full title path starting from the test file, including test and step titles.

    Codegen

    Automatic toBeVisible() assertions: Codegen can now generate automatic toBeVisible() assertions for common UI interactions. This feature can be enabled in the Codegen settings UI.

    Breaking Changes

    ⚠️ Dropped support for Chromium extension manifest v2.

    Miscellaneous

    Added support for Debian 13 "Trixie".

    Browser Versions

    Chromium 140.0.7339.16

    Mozilla Firefox 141.0

    WebKit 26.0

    This version was also tested against the following stable channels:

    Google Chrome 139

    Microsoft Edge 139

    Original source Report a problem
  • Jul 11, 2025
    • Parsed from source:
      Jul 11, 2025
    • Detected by Releasebot:
      Dec 11, 2025

    Playwright by Microsoft

    v1.54.1

    Highlights

    #36650 - [Regression]: 1.54.0 breaks downloading browsers when an HTTP(S) proxy is used

    Browser Versions

    • Chromium 139.0.7258.5
    • Mozilla Firefox 140.0.2
    • WebKit 26.0

    This version was also tested against the following stable channels:

    • Google Chrome 140
    • Microsoft Edge 140
    Original source Report a problem
  • Jul 10, 2025
    • Parsed from source:
      Jul 10, 2025
    • Detected by Releasebot:
      Dec 11, 2025

    Playwright by Microsoft

    v1.54.0

    Playwright introduces cookie partitionKey support to save and restore partitioned cookies, and a noSnippets option for HTML reports. It adds test annotation location, a new --user-data-dir CLI flag, and updates Node.js support along with browser version bumps.

    Highlights

    New cookie property partitionKey in browserContext.cookies() and browserContext.addCookies(). This property allows to save and restore partitioned cookies. See CHIPS MDN article for more information. Note that browsers have different support and defaults for cookie partitioning.

    New option noSnippets to disable code snippets in the html report.

    import { defineConfig } from '@playwright/test';
    export default defineConfig({
      reporter: [['html', { noSnippets: true }]]
    });
    

    New property location in test annotations, for example in testResult.annotations and testInfo.annotations. It shows where the annotation like test.skip or test.fixme was added.

    Command Line

    • New option --user-data-dir in multiple commands. You can specify the same user data dir to reuse browsing state, like authentication, between sessions.
    • npx playwright codegen --user-data-dir=./user-data
    • Option -gv has been removed from the npx playwright test command. Use --grep-invert instead.
    • npx playwright open does not open the test recorder anymore. Use npx playwright codegen instead.

    Miscellaneous

    • Support for Node.js 16 has been removed.
    • Support for Node.js 18 has been deprecated, and will be removed in the future.

    Browser Versions

    • Chromium 139.0.7258.5
    • Mozilla Firefox 140.0.2
    • WebKit 26.0
    • This version was also tested against the following stable channels:
    • Google Chrome 140
    • Microsoft Edge 140
    Original source Report a problem
  • Jun 30, 2025
    • Parsed from source:
      Jun 30, 2025
    • Detected by Releasebot:
      Dec 11, 2025

    Playwright by Microsoft

    v1.53.2

    Highlights

    • #36317 - [Regression]: Merging pre-1.53 blob reports loses attachments
    • #36357 - [Regression (Chromium)]: CDP missing trailing slash
    • #36292 - [Bug (MSEdge)]: Edge fails to launch when using msRelaunchNoCompatLayer

    Browser Versions

    • Chromium 138.0.7204.23
    • Mozilla Firefox 139.0
    • WebKit 18.5

    This version was also tested against the following stable channels:

    • Google Chrome 137
    • Microsoft Edge 137
    Original source Report a problem
  • Jun 18, 2025
    • Parsed from source:
      Jun 18, 2025
    • Detected by Releasebot:
      Dec 11, 2025

    Playwright by Microsoft

    v1.53.1

    Highlights

    • #36339 - [Regression]: Click can fail when scrolling required
    • #36307 - [Regression (Chromium)]: Under some scenarios filling a textarea doesn't fill
    • #36294 - [Regression (Firefox)]: setViewportSize times out
    • #36350 - [Fix]: Display HTTP method for fetch trace entries

    Browser Versions

    Chromium 138.0.7204.23
    Mozilla Firefox 139.0
    WebKit 18.5

    This version was also tested against the following stable channels:

    • Google Chrome 137
    • Microsoft Edge 137
    Original source Report a problem

This is the end. You've seen all the release notes in this feed!

Related products