Skip to content

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Jan 23, 2025

Note

Mend has cancelled the proposed renaming of the Renovate GitHub app being renamed to mend[bot].

This notice will be removed on 2025-10-07.


This PR contains the following updates:

Package Change Age Confidence
@playwright/test (source) 1.49.1 -> 1.56.0 age confidence

Release Notes

microsoft/playwright (@​playwright/test)

v1.56.0

Compare Source

v1.55.1

Compare Source

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".

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

v1.55.0

Compare Source

v1.54.2

Compare Source

Highlights

https://github.com/microsoft/playwright/issues/36714 - [Regression]: Codegen is not able to launch in Administrator Terminal on Windows (ProtocolError: Protocol error)https://github.com/microsoft/playwright/issues/368288 - [Regression]: Playwright Codegen keeps spamming with selected optiohttps://github.com/microsoft/playwright/issues/3681010 - [Regression]: Starting Codegen with target language doesn't work anymore

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

v1.54.1

Compare Source

v1.54.0

Compare Source

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

v1.53.2

Compare Source

v1.53.1

Compare Source

v1.53.0

Compare Source

Trace Viewer and HTML Reporter Updates

  • New Steps in Trace Viewer and HTML reporter: New Trace Viewer Steps

  • New option in 'html' reporter to set the title of a specific test run:

    import { defineConfig } from '@​playwright/test';
    
    export default defineConfig({
      reporter: [['html', { title: 'Custom test run #​1028' }]]
    });

Miscellaneous

  • New option kind in testInfo.snapshotPath() controls which snapshot path template is used.

  • New method locator.describe() to describe a locator. Used for trace viewer and reports.

    const button = page.getByTestId('btn-sub').describe('Subscribe button');
    await button.click();
  • npx playwright install --list will now list all installed browsers, versions and locations.

Browser Versions

  • Chromium 138.0.7204.4
  • Mozilla Firefox 139.0
  • WebKit 18.5

This version was also tested against the following stable channels:

  • Google Chrome 137
  • Microsoft Edge 137

v1.52.0

Compare Source

Highlights
  • New method expect(locator).toContainClass() to ergonomically assert individual class names on the element.

    await expect(page.getByRole('listitem', { name: 'Ship v1.52' })).toContainClass('done');
  • Aria Snapshots got two new properties: /children for strict matching and /url for links.

    await expect(locator).toMatchAriaSnapshot(`
      - list
        - /children: equal
        - listitem: Feature A
        - listitem:
          - link "Feature B":
            - /url: "https://playwright.dev"
    `);
Test Runner
  • New property testProject.workers allows to specify the number of concurrent worker processes to use for a test project. The global limit of property testConfig.workers still applies.
  • New testConfig.failOnFlakyTests option to fail the test run if any flaky tests are detected, similarly to --fail-on-flaky-tests. This is useful for CI/CD environments where you want to ensure that all tests are stable before deploying.
  • New property testResult.annotations contains annotations for each test retry.
Miscellaneous
  • New option maxRedirects in apiRequest.newContext() to control the maximum number of redirects.
  • HTML reporter now supports NOT filtering via !@​my-tag or !my-file.spec.ts or !p:my-project.
Breaking Changes
  • Changes to glob URL patterns in methods like page.route():
    • ? wildcard is not supported any more, it will always match question mark ? character.
    • Ranges/sets [] are not supported anymore. We recommend using regular expressions instead.
  • Method route.continue() does not allow to override the Cookie header anymore. If a Cookie header is provided, it will be ignored, and the cookie will be loaded from the browser's cookie store. To set custom cookies, use browserContext.addCookies().
  • macOS 13 is now deprecated and will no longer receive WebKit updates. Please upgrade to a more recent macOS version to continue benefiting from the latest WebKit improvements.
Browser Versions
  • Chromium 136.0.7103.25
  • Mozilla Firefox 137.0
  • WebKit 18.4

This version was also tested against the following stable channels:

  • Google Chrome 135
  • Microsoft Edge 135

v1.51.1

Compare Source

Highlights

#​35093 - [Regression]: TimeoutOverflowWarning: 2149630.634 does not fit into a 32-bit signed integer
#​35138 - [Regression]: TypeError: Cannot read properties of undefined (reading 'expectInfo')

Browser Versions

  • Chromium 134.0.6998.35
  • Mozilla Firefox 135.0
  • WebKit 18.4

This version was also tested against the following stable channels:

  • Google Chrome 133
  • Microsoft Edge 133

v1.51.0

Compare Source

StorageState for indexedDB

  • New option indexedDB for browserContext.storageState() allows to save and restore IndexedDB contents. Useful when your application uses IndexedDB API to store authentication tokens, like Firebase Authentication.

    Here is an example following the authentication guide:

    // tests/auth.setup.ts
    import { test as setup, expect } from '@​playwright/test';
    import path from 'path';
    
    const authFile = path.join(__dirname, '../playwright/.auth/user.json');
    
    setup('authenticate', async ({ page }) => {
      await page.goto('/');
      // ... perform authentication steps ...
    
      // make sure to save indexedDB
      await page.context().storageState({ path: authFile, indexedDB: true });
    });

Copy prompt

New "Copy prompt" button on errors in the HTML report, trace viewer and UI mode. Click to copy a pre-filled LLM prompt that contains the error message and useful context for fixing the error.

Copy prompt

Filter visible elements

New option visible for locator.filter() allows matching only visible elements.

// example.spec.ts
test('some test', async ({ page }) => {
  // Ignore invisible todo items.
  const todoItems = page.getByTestId('todo-item').filter({ visible: true });
  // Check there are exactly 3 visible ones.
  await expect(todoItems).toHaveCount(3);
});

Git information in HTML report

Set option testConfig.captureGitInfo to capture git information into testConfig.metadata.

// playwright.config.ts
import { defineConfig } from '@​playwright/test';

export default defineConfig({
  captureGitInfo: { commit: true, diff: true }
});

HTML report will show this information when available:

Git information in the report

Test Step improvements

A new TestStepInfo object is now available in test steps. You can add step attachments or skip the step under some conditions.

test('some test', async ({ page, isMobile }) => {
  // Note the new "step" argument:
  await test.step('here is my step', async step => {
    step.skip(isMobile, 'not relevant on mobile layouts');

    // ...
    await step.attach('my attachment', { body: 'some text' });
    // ...
  });
});

Miscellaneous

Browser Versions

  • Chromium 134.0.6998.35
  • Mozilla Firefox 135.0
  • WebKit 18.4

This version was also tested against the following stable channels:

  • Google Chrome 133
  • Microsoft Edge 133

v1.50.1

Compare Source

Highlights

#​34483 - [Feature]: single aria snapshot for different engines/browsers
#​34497 - [Bug]: Firefox not handling keepalive: true fetch requests
#​34504 - [Bug]: update snapshots not creating good diffs
#​34507 - [Bug]: snapshotPathTemplate doesnt work when multiple projects
#​34462 - [Bug]: updateSnapshots "changed" throws an error

Browser Versions

  • Chromium 133.0.6943.16
  • Mozilla Firefox 134.0
  • WebKit 18.2

This version was also tested against the following stable channels:

  • Google Chrome 132
  • Microsoft Edge 132

v1.50.0

Compare Source

Test runner

  • New option timeout allows specifying a maximum run time for an individual test step. A timed-out step will fail the execution of the test.

    test('some test', async ({ page }) => {
      await test.step('a step', async () => {
        // This step can time out separately from the test
      }, { timeout: 1000 });
    });
  • New method test.step.skip() to disable execution of a test step.

    test('some test', async ({ page }) => {
      await test.step('before running step', async () => {
        // Normal step
      });
    
      await test.step.skip('not yet ready', async () => {
        // This step is skipped
      });
    
      await test.step('after running step', async () => {
        // This step still runs even though the previous one was skipped
      });
    });
  • Expanded expect(locator).toMatchAriaSnapshot() to allow storing of aria snapshots in separate YAML files.

  • Added method expect(locator).toHaveAccessibleErrorMessage() to assert the Locator points to an element with a given aria errormessage.

  • Option testConfig.updateSnapshots added the configuration enum changed. changed updates only the snapshots that have changed, whereas all now updates all snapshots, regardless of whether there are any differences.

  • New option testConfig.updateSourceMethod defines the way source code is updated when testConfig.updateSnapshots is configured. Added overwrite and 3-way modes that write the changes into source code, on top of existing patch mode that creates a patch file.

    npx playwright test --update-snapshots=changed --update-source-method=3way
  • Option testConfig.webServer added a gracefulShutdown field for specifying a process kill signal other than the default SIGKILL.

  • Exposed testStep.attachments from the reporter API to allow retrieval of all attachments created by that step.

  • New option pathTemplate for toHaveScreenshot and toMatchAriaSnapshot assertions in the testConfig.expect configuration.

UI updates

  • Updated default HTML reporter to improve display of attachments.
  • New button for picking elements to produce aria snapshots.
  • Additional details (such as keys pressed) are now displayed alongside action API calls in traces.
  • Display of canvas content in traces is error-prone. Display is now disabled by default, and can be enabled via the Display canvas content UI setting.
  • Call and Network panels now display additional time information.

Breaking

Browser Versions

  • Chromium 133.0.6943.16
  • Mozilla Firefox 134.0
  • WebKit 18.2

This version was also tested against the following stable channels:

  • Google Chrome 132
  • Microsoft Edge 132

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Enabled.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot changed the title chore: Update dependency @playwright/test to v1.50.0 chore: Update dependency @playwright/test to v1.50.1 Feb 1, 2025
@renovate renovate bot force-pushed the renovate/playwright-monorepo branch from fc3b21b to e97c6a5 Compare February 1, 2025 21:28
@renovate renovate bot force-pushed the renovate/playwright-monorepo branch from e97c6a5 to ec81b59 Compare March 6, 2025 18:55
@renovate renovate bot changed the title chore: Update dependency @playwright/test to v1.50.1 chore: Update dependency @playwright/test to v1.51.0 Mar 6, 2025
@renovate renovate bot force-pushed the renovate/playwright-monorepo branch from ec81b59 to 2894c05 Compare March 17, 2025 18:10
@renovate renovate bot changed the title chore: Update dependency @playwright/test to v1.51.0 chore: Update dependency @playwright/test to v1.51.1 Mar 17, 2025
@renovate renovate bot changed the title chore: Update dependency @playwright/test to v1.51.1 chore: Update dependency @playwright/test to v1.52.0 Apr 17, 2025
@renovate renovate bot force-pushed the renovate/playwright-monorepo branch from 2894c05 to 04326db Compare April 17, 2025 22:30
@renovate renovate bot force-pushed the renovate/playwright-monorepo branch from 04326db to 978f43b Compare June 10, 2025 22:43
@renovate renovate bot changed the title chore: Update dependency @playwright/test to v1.52.0 chore: Update dependency @playwright/test to v1.53.0 Jun 10, 2025
@renovate renovate bot force-pushed the renovate/playwright-monorepo branch from 978f43b to d03e518 Compare June 18, 2025 20:13
@renovate renovate bot changed the title chore: Update dependency @playwright/test to v1.53.0 chore: Update dependency @playwright/test to v1.53.1 Jun 18, 2025
@renovate renovate bot force-pushed the renovate/playwright-monorepo branch from d03e518 to 86f301e Compare June 30, 2025 19:29
@renovate renovate bot changed the title chore: Update dependency @playwright/test to v1.53.1 chore: Update dependency @playwright/test to v1.53.2 Jun 30, 2025
@renovate renovate bot force-pushed the renovate/playwright-monorepo branch from 86f301e to 163ae64 Compare July 10, 2025 16:29
@renovate renovate bot changed the title chore: Update dependency @playwright/test to v1.53.2 chore: Update dependency @playwright/test to v1.54.0 Jul 10, 2025
@renovate renovate bot force-pushed the renovate/playwright-monorepo branch from 163ae64 to 3d3d4ce Compare July 11, 2025 14:41
@renovate renovate bot changed the title chore: Update dependency @playwright/test to v1.54.0 chore: Update dependency @playwright/test to v1.54.1 Jul 11, 2025
@renovate renovate bot force-pushed the renovate/playwright-monorepo branch from 3d3d4ce to 7766907 Compare August 1, 2025 07:29
@renovate renovate bot changed the title chore: Update dependency @playwright/test to v1.54.1 chore: Update dependency @playwright/test to v1.54.2 Aug 1, 2025
@renovate renovate bot force-pushed the renovate/playwright-monorepo branch from 7766907 to aeaf58a Compare August 20, 2025 13:50
@renovate renovate bot changed the title chore: Update dependency @playwright/test to v1.54.2 chore: Update dependency @playwright/test to v1.55.0 Aug 20, 2025
@renovate renovate bot force-pushed the renovate/playwright-monorepo branch from aeaf58a to 781d3d3 Compare September 23, 2025 14:08
@renovate renovate bot changed the title chore: Update dependency @playwright/test to v1.55.0 chore: Update dependency @playwright/test to v1.55.1 Sep 23, 2025
@renovate renovate bot force-pushed the renovate/playwright-monorepo branch from 781d3d3 to 9f03f01 Compare September 25, 2025 17:01
@renovate renovate bot force-pushed the renovate/playwright-monorepo branch from 9f03f01 to ce7ada1 Compare October 6, 2025 18:34
@renovate renovate bot changed the title chore: Update dependency @playwright/test to v1.55.1 chore: Update dependency @playwright/test to v1.56.0 Oct 6, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

0 participants