Skip to content

[Snyk] Upgrade @playwright/test from 1.42.1 to 1.50.1 #47

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

nerdy-tech-com-gitub
Copy link
Owner

@nerdy-tech-com-gitub nerdy-tech-com-gitub commented Feb 27, 2025

snyk-top-banner

Snyk has created this PR to upgrade @playwright/test from 1.42.1 to 1.50.1.

ℹ️ Keep your dependencies up-to-date. This makes it easier to fix existing vulnerabilities and to more quickly identify and fix newly disclosed vulnerabilities when they affect your project.


  • The recommended version is 545 versions ahead of your current version.

  • The recommended version was released a month ago.

Issues fixed by the recommended upgrade:

Issue Score Exploit Maturity
high severity Regular Expression Denial of Service (ReDoS)
SNYK-JS-CROSSSPAWN-8303230
169 Proof of Concept
high severity Prototype Pollution
SNYK-JS-INTLIFYSHARED-8442251
169 Proof of Concept
high severity Prototype Pollution
SNYK-JS-VUEI18N-8442254
169 Proof of Concept
medium severity Cross-site Scripting (XSS)
SNYK-JS-INTLIFYCOREBASE-8442262
169 Proof of Concept
medium severity Improper Input Validation
SNYK-JS-NANOID-8492085
169 No Known Exploit
medium severity Cross-site Scripting (XSS)
SNYK-JS-ROLLUP-8073097
169 Proof of Concept
medium severity Origin Validation Error
SNYK-JS-VITE-8648411
169 Proof of Concept
medium severity Cross-site Scripting (XSS)
SNYK-JS-VUEI18N-8442260
169 Proof of Concept
Release notes
Package name: @playwright/test
  • 1.50.1 - 2025-01-31

    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
  • 1.50.1-beta-1738613447000 - 2025-02-03
  • 1.50.1-beta-1738592302000 - 2025-02-03
  • 1.50.1-beta-1738589118000 - 2025-02-03
  • 1.50.1-beta-1738339353000 - 2025-01-31
  • 1.50.0 - 2025-01-23

    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
  • 1.50.0-beta-1738269400000 - 2025-01-30
  • 1.50.0-beta-1738267712000 - 2025-01-30
  • 1.50.0-beta-1738240825000 - 2025-01-30
  • 1.50.0-beta-1738235262000 - 2025-01-30
  • 1.50.0-beta-1738199921000 - 2025-01-30
  • 1.50.0-beta-1738167398000 - 2025-01-29
  • 1.50.0-beta-1738167361000 - 2025-01-29
  • 1.50.0-beta-1738162324000 - 2025-01-29
  • 1.50.0-beta-1738148461000 - 2025-01-29
  • 1.50.0-beta-1738116015000 - 2025-01-29
  • 1.50.0-beta-1738109212000 - 2025-01-29
  • 1.50.0-beta-1738103953000 - 2025-01-28
  • 1.50.0-beta-1738058149000 - 2025-01-28
  • 1.50.0-beta-1737762224000 - 2025-01-24
  • 1.50.0-beta-1737749840000 - 2025-01-24
  • 1.50.0-beta-1737639506000 - 2025-01-23
  • 1.50.0-beta-1737637449000 - 2025-01-23
  • 1.50.0-beta-1737629780000 - 2025-01-23
  • 1.50.0-beta-1737569167000 - 2025-01-22
  • 1.50.0-beta-1737568569000 - 2025-01-22
  • 1.50.0-beta-1737557690000 - 2025-01-22
  • 1.50.0-beta-1737538027000 - 2025-01-22
  • 1.50.0-beta-1737532416000 - 2025-01-22
  • 1.50.0-beta-1737532333000 - 2025-01-22
  • 1.50.0-beta-1737179657000 - 2025-01-18
  • 1.50.0-beta-1737153401000 - 2025-01-17
  • 1.50.0-beta-1737137869000 - 2025-01-17
  • 1.50.0-beta-1731498714000 - 2024-11-13
  • 1.50.0-alpha-2025-01-17 - 2025-01-17
  • 1.50.0-alpha-2025-01-16 - 2025-01-16
  • 1.50.0-alpha-2025-01-15 - 2025-01-15
  • 1.50.0-alpha-2025-01-14 - 2025-01-14
  • 1.50.0-alpha-2025-01-13 - 2025-01-13
  • 1.50.0-alpha-2025-01-12 - 2025-01-12
  • 1.50.0-alpha-2025-01-11 - 2025-01-11
  • 1.50.0-alpha-2025-01-07 - 2025-01-07
  • 1.50.0-alpha-2025-01-06 - 2025-01-06
  • 1.50.0-alpha-2025-01-05 - 2025-01-05
  • 1.50.0-alpha-2025-01-04 - 2025-01-04
  • 1.50.0-alpha-2025-01-03 - 2025-01-03
  • 1.50.0-alpha-2025-01-02 - 2025-01-02
  • 1.50.0-alpha-2025-01-01 - 2025-01-01
  • 1.50.0-alpha-2024-12-31 - 2024-12-31
  • 1.50.0-alpha-2024-12-30 - 2024-12-30
  • 1.50.0-alpha-2024-12-29 - 2024-12-29
  • 1.50.0-alpha-2024-12-28 - 2024-12-28
  • 1.50.0-alpha-2024-12-27 - 2024-12-27
  • 1.50.0-alpha-2024-12-26 - 2024-12-26
  • 1.50.0-alpha-2024-12-25 - 2024-12-25
  • 1.50.0-alpha-2024-12-24 - 2024-12-24
  • 1.50.0-alpha-2024-12-23 - 2024-12-23
  • 1.50.0-alpha-2024-12-22 - 2024-12-22
  • 1.50.0-alpha-2024-12-21 - 2024-12-21
  • 1.50.0-alpha-2024-12-20 - 2024-12-20
  • 1.50.0-alpha-2024-12-19 - 2024-12-19
  • 1.50.0-alpha-2024-12-18 - 2024-12-18
  • 1.50.0-alpha-2024-12-17 - 2024-12-17
  • 1.50.0-alpha-2024-12-16 - 2024-12-16
  • 1.50.0-alpha-2024-12-15 - 2024-12-15
  • 1.50.0-alpha-2024-12-14 - 2024-12-14
  • 1.50.0-alpha-2024-12-13 - 2024-12-13
  • 1.50.0-alpha-2024-12-12 - 2024-12-12
  • 1.50.0-alpha-2024-12-11 - 2024-12-11
  • 1.50.0-alpha-2024-12-10 - 2024-12-10
  • 1.50.0-alpha-2024-12-09 - 2024-12-09
  • 1.50.0-alpha-2024-12-08 - 2024-12-08
  • 1.50.0-alpha-2024-12-07 - 2024-12-07
  • 1.50.0-alpha-2024-12-06 - 2024-12-06
  • 1.50.0-alpha-2024-12-05 - 2024-12-05
  • 1.50.0-alpha-2024-12-04 - 2024-12-04
  • 1.50.0-alpha-2024-12-03 - 2024-12-03
  • 1.50.0-alpha-2024-12-02 - 2024-12-02
  • 1.50.0-alpha-2024-12-01 - 2024-12-01
  • 1.50.0-alpha-2024-11-30 - 2024-11-30
  • 1.50.0-alpha-2024-11-29 - 2024-11-29
  • 1.50.0-alpha-2024-11-28 - 2024-11-28
  • 1.50.0-alpha-2024-11-27 - 2024-11-27
  • 1.50.0-alpha-2024-11-26 - 2024-11-26
  • 1.50.0-alpha-2024-11-25 - 2024-11-25
  • 1.50.0-alpha-2024-11-24 - 2024-11-24
  • 1.50.0-alpha-2024-11-23 - 2024-11-23
  • 1.50.0-alpha-2024-11-22 - 2024-11-22
  • 1.50.0-alpha-2024-11-21 - 2024-11-21
  • 1.50.0-alpha-2024-11-20 - 2024-11-20
  • 1.50.0-alpha-2024-11-19 - 2024-11-19
  • 1.50.0-alpha-2024-11-18 - 2024-11-18
  • 1.50.0-alpha-2024-11-17 - 2024-11-17
  • 1.50.0-alpha-2024-11-16 - 2024-11-16
  • 1.50.0-alpha-2024-11-15 - 2024-11-15
  • 1.50.0-alpha-2024-11-14 - 2024-11-14
  • 1.50.0-alpha-1737075373000 - 2025-01-17
  • 1.50.0-alpha-1737068696000 - 2025-01-16
  • 1.50.0-alpha-1736502759000 - 2025-01-10
  • 1.49.1 - 2024-12-10

    Highlights

    #33802 - [Bug]: Codegen's Clear button doesn't work if not recording
    #33806 - [Bug]: playwright hangs while waiting for pending navigations
    #33787 - [Bug]: VSC extension isn't capturing all entered text
    #33788 - [Regression]: Double clicking the steps in trace viewer doesn't filter actions
    #33772 - [Bug]: aria_snapshot generates invalid yaml when combined with an aria-label attribut
    #33791 - [Bug]: text input with number value raises "container is not iterable" with to_match_aria_snapshot
    #33644 - [Bug]: getByRole can't find element with the accessible name from label element when aria-labelledby is not valid
    #33660 - [Regression]: Unable to open Playwright UI in Dark Mode

    Browser Versions

    • Chromium 131.0.6778.33
    • Mozilla Firefox 132.0
    • WebKit 18.2

    This version was also tested against the following stable channels:

    • Google Chrome 130
    • Microsoft Edge 130
  • 1.49.1-beta-1735303389000 - 2024-12-27
  • 1.49.1-beta-1733793925000 - 2024-12-10
  • 1.49.0 - 2024-11-18

    Aria snapshots

    New assertion expect(locator).toMatchAriaSnapshot() verifies page structure by comparing to an expected accessibility tree, represented as YAML.

    await page.goto('https://playwright.dev');
    await expect(page.locator('body')).toMatchAriaSnapshot(`
      - banner:
        - heading /Playwright enables reliable/ [level=1]
        - link "Get started"
        - link "Star microsoft/playwright on GitHub"
      - main:
        - img "Browsers (Chromium, Firefox, WebKit)"
        - heading "Any browser • Any platform • One API"
    `);

    You can generate this assertion with Test Generator and update the expected snapshot with --update-snapshots command line flag.

    Learn more in the aria snapshots guide.

    Test runner

    Breaking: channels chrome, msedge and similar switch to new headless

    This change affects you if you're using one of the following channels in your playwright.config.ts:

    • chrome, chrome-dev, chrome-beta, or chrome-canary
    • msedge, msedge-dev, msedge-beta, or msedge-canary

    What do I need to do?

    After updating to Playwright v1.49, run your test suite. If it still passes, you're good to go. If not, you will probably need to update your snapshots, and adapt some of your test code around PDF viewers and extensions. See issue #33566 for more details.

    Other breaking changes

    • There will be no more updates for WebKit on Ubuntu 20.04 and Debian 11. We recommend updating your OS to a later version.
    • Package @ playwright/experimental-ct-vue2 will no longer be updated.
    • Package @ playwright/experimental-ct-solid will no longer be updated.

    Try new Chromium headless

    You can opt into the new headless mode by using 'chromium' channel. As official Chrome documentation puts it:

    New Headless on the other hand is the real Chrome browser, and is thus more authentic, reliable, and offers more features. This makes it more suitable for high-accuracy end-to-end web app testing or browser extension testing.

    See issue #33566 for the list of possible breakages you could encounter and more details on Chromium headless. Please file an issue if you see any problems after opting in.

    import { defineConfig, devices } from '@ playwright/test';

    export default defineConfig({
    projects: [
    {
    name: 'chromium',
    use: { ...devices['Desktop Chrome'], channel: 'chromium' },
    },
    ],
    });

    Miscellaneous

    • <canvas> elements inside a snapshot now draw a preview.
    • New method tracing.group() to visually group actions in the trace.
    • Playwright docker images switched from Node.js v20 to Node.js v22 LTS.

    Browser Versions

    • Chromium 131.0.6778.33
    • Mozilla Firefox 132.0
    • WebKit 18.2

    This version was also tested against the following stable channels:

    • Google Chrome 130
    • Microsoft Edge 130
  • 1.49.0-beta-1733521450000 - 2024-12-06
  • 1.49.0-beta-1733285915000 - 2024-12-04
  • 1.49.0-beta-1733246833000 - 2024-12-03
  • 1.49.0-beta-1732799609000 - 2024-11-28
  • 1.49.0-beta-1732795940000 - 2024-11-28
  • 1.49.0-beta-1732795768000 - 2024-11-28
  • 1.49.0-beta-1732795640000 - 2024-11-28
  • 1.49.0-beta-1732210972000 - 2024-11-21
  • 1.49.0-beta-1732200847000 - 2024-11-21
  • 1.49.0-beta-1732183793000 - 2024-11-21
  • 1.49.0-beta-1732179895000 - 2024-11-21
  • 1.49.0-beta-1732065049000 - 2024-11-20
  • 1.49.0-beta-1732021985000 - 2024-11-19
  • 1.49.0-beta-1732008569000 - 2024-11-19
  • 1.49.0-beta-1731954680000 - 2024-11-18
  • 1.49.0-beta-1731772650000 - 2024-11-16
  • 1.49.0-beta-1731718789000 - 2024-11-16
  • 1.49.0-beta-1731709328000 - 2024-11-15
  • 1.49.0-beta-1731703794000 - 2024-11-15
  • 1.49.0-beta-1731687401000 - 2024-11-15
  • 1.49.0-beta-1731672404000 - 2024-11-15
  • 1.49.0-beta-1731616844000 - 2024-11-14
  • 1.49.0-beta-1731595428000 - 2024-11-14
  • 1.49.0-beta-1731591637000 - 2024-11-14
  • 1.49.0-beta-1731582214000 - 2024-11-14
  • 1.49.0-beta-1731562490000 - 2024-11-14
  • 1.49.0-beta-1731497689000 - 2024-11-13
  • 1.49.0-alpha-2024-11-13 - 2024-11-13
  • 1.49.0-alpha-2024-11-12 - 2024-11-12
  • 1.49.0-alpha-2024-11-11 - 2024-11-11
  • 1.49.0-alpha-2024-11-10 - 2024-11-10
  • 1.49.0-alpha-2024-11-09 - 2024-11-09
  • 1.49.0-alpha-2024-11-08 - 2024-11-08
  • 1.49.0-alpha-2024-11-07 - 2024-11-07
  • 1.49.0-alpha-2024-11-06 - 2024-11-06
  • 1.49.0-alpha-2024-11-05 - 2024-11-05
  • 1.49.0-alpha-2024-11-04 - 2024-11-04
  • 1.49.0-alpha-2024-11-03 - 2024-11-03
  • 1.49.0-alpha-2024-11-02 - 2024-11-02
  • 1.49.0-alpha-2024-11-01 - 2024-11-01
  • 1.49.0-alpha-2024-10-31 - 2024-10-31
  • 1.49.0-alpha-2024-10-30 - 2024-10-30
  • 1.49.0-alpha-2024-10-29 - 2024-10-29
  • 1.49.0-alpha-2024-10-28 - 2024-10-28
  • 1.49.0-alpha-2024-10-27 - 2024-10-27
  • 1.49.0-alpha-2024-10-26 - 2024-10-26
  • 1.49.0-alpha-2024-10-25 - 2024-10-25
  • 1.49.0-alpha-2024-10-24 - 2024-10-24
  • 1.49.0-alpha-2024-10-23 - 2024-10-23
  • 1.49.0-alpha-2024-10-22 - 2024-10-22
  • 1.49.0-alpha-2024-10-21 - 2024-10-21
  • 1.49.0-alpha-2024-10-20 - 2024-10-20
  • 1.49.0-alpha-2024-10-19 - 2024-10-19
  • 1.49.0-alpha-2024-10-18 - 2024-10-18
  • 1.49.0-alpha-2024-10-17 - 2024-10-17
  • 1.49.0-alpha-2024-10-16 - 2024-10-16
  • 1.49.0-alpha-2024-10-15 - 2024-10-15
  • 1.49.0-alpha-2024-10-14 - 2024-10-14
  • 1.49.0-alpha-2024-10-13 - 2024-10-13
  • 1.49.0-alpha-2024-10-12 - 2024-10-12
  • 1.49.0-alpha-2024-10-11 - 2024-10-11
  • 1.49.0-alpha-2024-10-10 - 2024-10-10
  • 1.49.0-alpha-2024-10-09 - 2024-10-09
  • 1.49.0-alpha-2024-10-08 - 2024-10-08
  • 1.49.0-alpha-2024-10-07 - 2024-10-07
  • 1.49.0-alpha-2024-10-06 - 2024-10-06
  • 1.49.0-alpha-2024-10-05 - 2024-10-05
  • 1.49.0-alpha-2024-10-04 - 2024-10-04
  • 1.49.0-alpha-2024-10-03 - 2024-10-03
  • 1.49.0-alpha-2024-10-02 - 2024-10-02
  • 1.49.0-alpha-2024-10-01 - 2024-10-01
  • 1.49.0-alpha-1730721360000 - 2024-11-04
  • 1.49.0-alpha-1728937530000 - 2024-10-14
  • 1.48.2 - 2024-10-25

    Highlights

    #33141 - [Bug]: UI Mode crashed
    #33219 - [BUG] Trace Viewer PWA crashes with "Aw, Snap!"
    #33086 - [Bug]: UI Mode Memory problem
    #33000 - [Regression]: Inspector and Browser doesn't close on CTRL+C
    #33204 - [Bug]: Chrome tab and inspector not closing after terminating session in terminal

    Browser Versions

    • Chromium 130.0.6723.19
    • Mozilla Firefox 130.0
    • WebKit 18.0

    This version was also tested against the following stable channels:

    • Google Chrome 129
    • Microsoft Edge 129
  • 1.48.2-beta-1735303378000 - 2024-12-27
  • 1.48.2-beta-1729887785000 - 2024-10-25
  • 1.48.1 - 2024-10-16

    Highlights

    #33023 - [Bug]: command line flag --headed has no effect in ui mode
    #33107 - [REGRESSION]: page.waitForRequest does not get resolved since 1.48.0
    #33085 - [Bug]: WebSocket route does not handle full URLs in Playwright
    #33052 - [Regression]: Inspector not showing recorded steps
    #33132 - [Bug]: Wrong Ubuntu release name in Dockerfile.noble
    #32996 - [BUG] Trace attachments have small unusable height

    Browser Versions

    • Chromium 130.0.6723.19
    • Mozilla Firefox 130.0
    • WebKit 18.0

    This version was also tested against the following stable channels:

    • Google Chrome 129
    • Microsoft Edge 129
  • 1.48.1-beta-1729803910000 - 2024-10-24
  • 1.48.1-beta-1729768444000 - 2024-10-24
  • 1.48.1-beta-1729761836000 - 2024-10-24
  • 1.48.1-beta-1729761824000 - 2024-10-24
  • 1.48.1-beta-1729538520000 - 2024-10-21
  • 1.48.1-beta-1729096710000 - 2024-10-16
  • 1.48.1-beta-1729071078000 - 2024-10-16
  • 1.48.0 - 2024-10-08

    WebSocket routing

    New methods page.routeWebSocket() and browserContext.routeWebSocket() allow to intercept, modify and mock WebSocket connections initiated in the page. Below is a simple example that mocks WebSocket communication by responding to a "request" with a "response".

    await page.routeWebSocket('/ws', ws => {
      ws.onMessage(message => {
        if (message === 'request')
          ws.send('response');
      });
    });

    See WebSocketRoute for more details.

    UI updates

    • New "copy" buttons for annotations and test location in the HTML report.
    • Route method calls like route.fulfill() are not shown in the report and trace viewer anymore. You can see which network requests were routed in the network tab instead.
    • New "Copy as cURL" and "Copy as fetch" buttons for requests in the network tab.

    Miscellaneous

    Browser Versions

    • Chromium 130.0.6723.19
    • Mozilla Firefox 130.0
    • WebKit 18.0

    This version was also tested against the following stable channels:

    • Google Chrome 129
    • Microsoft Edge 129
  • 1.48.0-beta-1729066602000 - 2024-10-16
  • 1.48.0-beta-1729034638000 - 2024-10-15
  • 1.48.0-beta-1729024528000 - 2024-10-15
  • 1.48.0-beta-1728993409000 - 2024-10-15
  • 1.48.0-beta-1728993389000 - 2024-10-15
  • 1.48.0-beta-1728983264000 - 2024-10-15
  • 1.48.0-beta-1728939942000 - 2024-10-14
  • 1.48.0-beta-1728916380000 - 2024-10-14
  • 1.48.0-beta-1728521270000 - 2024-10-10
  • 1.48.0-beta-1728408670000 - 2024-10-08
  • 1.48.0-beta-1728391058000 - 2024-10-08
  • 1.48.0-beta-1728384960000 - 2024-10-08
  • 1.48.0-beta-1728384890000 - 2024-10-08
  • 1.48.0-beta-1728371904000 - 2024-10-08
  • 1.48.0-beta-1728034490000 - 2024-10-04
  • 1.48.0-beta-1727939718000 - 2024-10-03
  • 1.48.0-beta-1727868641000 - 2024-10-02
  • 1.48.0-beta-1727802413000 - 2024-10-01
  • 1.48.0-beta-1727800739000 - 2024-10-01
  • 1.48.0-beta-1727721217000 - 2024-09-30
  • 1.48.0-beta-1727692967000 - 2024-09-30
  • 1.48.0-alpha-2024-09-30 - 2024-09-30
  • 1.48.0-alpha-2024-09-29 - 2024-09-29
  • 1.48.0-alpha-2024-09-28 - 2024-09-28
  • 1.48.0-alpha-2024-09-27 - 2024-09-27
  • 1.48.0-alpha-2024-09-26 - 2024-09-26
  • 1.48.0-alpha-2024-09-25 - 2024-09-25
  • 1.48.0-alpha-2024-09-24 - 2024-09-24
  • 1.48.0-alpha-2024-09-23 - 2024-09-23
  • 1.48.0-alpha-2024-09-22 - 2024-09-22
  • 1.48.0-alpha-2024-09-21 - 2024-09-21
  • 1.48.0-alpha-2024-09-20 - 2024-09-20
  • 1.48.0-alpha-2024-09-19 - 2024-09-19
  • 1.48.0-alpha-2024-09-18 - 2024-09-18
  • 1.48.0-alpha-2024-09-17 - 2024-09-17
  • 1.48.0-alpha-2024-09-16 - 2024-09-16
  • 1.48.0-alpha-2024-09-15 - 2024-09-15
  • 1.48.0-alpha-2024-09-14 - 2024-09-14
  • 1.48.0-alpha-2024-09-13 - 2024-09-13
  • 1.48.0-alpha-2024-09-12 - 2024-09-12
  • 1.48.0-alpha-2024-09-11 - 2024-09-11
  • 1.48.0-alpha-2024-09-10 - 2024-09-10
  • 1.48.0-alpha-2024-09-09 - 2024-09-09
  • 1.48.0-alpha-2024-09-08 - 2024-09-08
  • 1.48.0-alpha-2024-09-07 - 2024-09-07
  • 1.48.0-alpha-2024-09-06 - 2024-09-06
  • 1.48.0-alpha-1727434891000 - 2024-09-27
  • 1.47.2 - 2024-09-20

    Highlights

    #32699 [REGRESSION]: fix(codegen): use content_frame property in python/.NET
    #32706 [REGRESSION]: page.pause() does not pause test timeout after 1.47
    #32661 - fix(trace-viewer): time delta between local and remote actions

    Browser Versions

    • Chromium 129.0.6668.29
    • Mozilla Firefox 130.0
    • WebKit 18.0

    This version was also tested against the following stable channels:

    • Google Chrome 128
    • Microsoft Edge 128
  • 1.47.2-beta-1735303372000 - 2024-12-27
  • 1.47.2-beta-1727139937000 - 2024-09-24
  • 1.47.2-beta-1726852863000 - 2024-09-20
  • 1.47.1 - 2024-09-13

    Highlights

    #32480 - [REGRESSION]: tsconfig.json's compilerOptions.paths no longer working in 1.47
    #32552 - [REGRESSION]: broken UI in Trace Viewer while showing network response body

    Browser Versions

    • Chromium 129.0.6668.29
    • Mozilla Firefox 130.0
    • WebKit 18.0

    This version was also tested against the following stable channels:

    • Google Chrome 128
    • Microsoft Edge 128
  • 1.47.1-beta-1726849306000 - 2024-09-20
  • 1.47.1-beta-1726827698000 - 2024-09-20
  • 1.47.1-beta-1726598621000 - 2024-09-17
  • 1.47.1-beta-1726247857000 - 2024-09-13
  • 1.47.0 - 2024-09-05

    Network Tab improvements

    The Network tab in the UI mode and trace viewer has several nice improvements:

    • filtering by asset type and URL
    • better display of query string parameters
    • preview of font assets

    Network tab now has filters

    Credit to @ kubajanik for these wonderful improvements!

    --tsconfig CLI option

    By default, Playwright will look up the closest tsconfig for each imported file using a heuristic. You can now specify a single tsconfig file in the command line, and Playwright will use it for all imported files, not only test files:

    # Pass a specific tsconfig
    npx playwright test --tsconfig tsconfig.test.json

    APIRequestContext now accepts URLSearchParams and string as query parameters

    You can now pass URLSearchParams and string as query parameters to APIRequestContext:

    test('query params', async ({ request }) => {
      const searchParams = new URLSearchParams();
      searchParams.set('userId', 1);
      const response = await request.get(
          'https://jsonplaceholder.typicode.com/posts',
          {
            params: searchParams // or as a string: 'userId=1'
          }
      );
      // ...
    });

    Miscellaneous

    • The mcr.microsoft.com/playwright:v1.47.0 now serves a Playwright image based on Ubuntu 24.04 Noble.
      To use the 22.04 jammy-based image, please use mcr.microsoft.com/playwright:v1.47.0-jammy instead.
    • The :latest/:focal/:jammy tag for Playwright Docker images is no longer being published. Pin to a specific version for better stability and reproducibility.
    • New option behavior in page.removeAllListeners(), browser.removeAllListeners() and browserContext.removeAllListeners() to wait for ongoing listeners to complete.
    • TLS client certificates can now be passed from memory by passing cert and key as buffers instead of file paths.
    • Attachments with a text/html content type can now be opened in a new tab in the HTML report. This is useful for including third-party reports or other HTML content in the Playwright test report and distributing it to your team.
    • noWaitAfter in locator.selectOption() was deprecated.
    • We've seen reports of WebGL in Webkit misbehaving on GitHub Actions macos-13. We recommend upgrading GitHub Actions to macos-14.

    Browser Versions

    • Chromium 129.0.6668.29
    • Mozilla Firefox 130.0
    • WebKit 18.0

    This version was also tested against the following stable channels:

    • Google Chrome 128
    • Microsoft Edge 128
  • 1.47.0-beta-1726138322000 - 2024-09-12
  • 1.47.0-beta-1726136860000 - 2024-09-12
  • 1.47.0-beta-1726127997000 - 2024-09-12
  • 1.47.0-beta-1726085360000 - 2024-09-11
  • 1.47.0-beta-1725889926000 - 2024-09-09
  • 1.47.0-beta-1725611500000 - 2024-09-06
  • 1.47.0-beta-1725570477000 - 2024-09-05 Summary by Sourcery

    Upgrade @playwright/test from 1.42.1 to 1.50.1. This update includes bug fixes, new features such as test step timeouts and skipping, aria snapshot enhancements, improved UI elements, and WebSocket routing capabilities. It also incorporates enhancements to the HTML reporter, trace viewer, and network tab, along with miscellaneous improvements and dependency updates.

    New Features:

    • Introduces a timeout option for individual test steps.
    • Adds a method to skip the execution of a test step.
    • Expands aria snapshot functionality to allow storing snapshots in separate YAML files.
    • Adds a method to assert that a Locator points to an element with a given aria errormessage.
    • Introduces a configuration enum to update only changed snapshots.
    • Adds a configuration option to define how source code is updated when snapshots are updated.
    • Adds a field to specify a process kill signal for the webServer configuration.
    • Exposes testStep.attachments from the reporter API.
    • Adds a pathTemplate option for toHaveScreenshot and toMatchAriaSnapshot assertions.
    • Introduces a new assertion to verify page structure by comparing to an expected accessibility tree.
    • Adds a new option to specify a single tsconfig to be used for all tests.
    • Introduces a new method to focus on a failing test.
    • Adds a new value for testOptions.screenshot.
    • Adds new properties mirroring Error.cause.
    • Introduces WebSocket routing to intercept, modify, and mock WebSocket connections.

    Bug Fixes:

    • Fixes multiple bugs, including issues with Codegen, hanging navigations, VSC extension text capturing, trace viewer filtering, aria snapshot generation, accessible name resolution, and UI mode display.

    Enhancements:

    • Improves the HTML reporter with better display of attachments.
    • Updates the UI with a new button for picking elements to produce aria snapshots.
    • Enhances traces with additional details for action API calls.
    • Improves the display of attachments in the default HTML reporter.
    • Adds new 'copy' buttons for annotations and test location in the HTML report.
    • Adds new 'Copy as cURL' and 'Copy as fetch' buttons for requests in the network tab.
    • Improves the Network tab in the UI mode and trace viewer with filtering, better query string display, and font asset preview.
    • Switches Playwright docker images from Node.js v20 to Node.js v22 LTS.

Snyk has created this PR to upgrade @playwright/test from 1.42.1 to 1.50.1.

See this package in npm:
@playwright/test

See this project in Snyk:
https://app.snyk.io/org/nerds-github/project/a6d95be2-6fa7-418d-8fd1-0cd3974eee23?utm_source=github&utm_medium=referral&page=upgrade-pr
Copy link

sourcery-ai bot commented Feb 27, 2025

Reviewer's Guide by Sourcery

This pull request upgrades the @playwright/test package from version 1.42.1 to 1.50.1. This update addresses multiple security vulnerabilities, introduces new features such as aria snapshots and WebSocket routing, and includes various bug fixes and improvements to the test runner and UI.

Sequence Diagram for WebSocket Routing

sequenceDiagram
    participant Page
    participant WebSocket
    participant WebSocketRoute

    Page->>Page: routeWebSocket('/ws', callback)
    Page->>WebSocket: Initiate connection to /ws
    activate WebSocket
    WebSocket->>WebSocketRoute: onMessage(message)
    activate WebSocketRoute
    alt message === 'request'
        WebSocketRoute->>WebSocket: send('response')
    end
    deactivate WebSocketRoute
    deactivate WebSocket
Loading

Updated Class Diagram for TestConfig

classDiagram
    class TestConfig {
        +updateSnapshots: enum
        +updateSourceMethod: enum
        +webServer: Object
        +globalSetup: Array<string>
        +globalTeardown: Array<string>
        +tsconfig: string
        +expect: Object
    }

    note for TestConfig "Added tsconfig option, updateSnapshots enum value 'changed', updateSourceMethod option, gracefulShutdown field to webServer, pathTemplate for expect"
Loading

Updated Class Diagram for TestStep

classDiagram
    class TestStep {
        +attachments: Array<Object>
        +skip(): void
        +timeout: number
        +location: Object
    }

    note for TestStep "Added skip() method, timeout option, attachments property, location option"
Loading

Updated Class Diagram for LocatorAssertions

classDiagram
    class LocatorAssertions {
        +toMatchAriaSnapshot(): void
        +toHaveAccessibleErrorMessage(): void
        +toBeEditable(): void
    }

    note for LocatorAssertions "Added toMatchAriaSnapshot() and toHaveAccessibleErrorMessage() methods.  toBeEditable() now throws on non-editable elements."
Loading

Updated Class Diagram for Page

classDiagram
    class Page {
        +routeWebSocket(): void
        +requestGC(): void
        +removeAllListeners(): void
    }

    note for Page "Added routeWebSocket() and requestGC() methods, and behavior option to removeAllListeners()"
Loading

File-Level Changes

Change Details Files
The pull request upgrades the @playwright/test package from version 1.42.1 to 1.50.1.
  • Updated @playwright/test to version 1.50.1 to address security vulnerabilities and incorporate new features and bug fixes.
frontend/package.json

Tips and commands

Interacting with Sourcery

  • Trigger a new review: Comment @sourcery-ai review on the pull request.
  • Continue discussions: Reply directly to Sourcery's review comments.
  • Generate a GitHub issue from a review comment: Ask Sourcery to create an
    issue from a review comment by replying to it. You can also reply to a
    review comment with @sourcery-ai issue to create an issue from it.
  • Generate a pull request title: Write @sourcery-ai anywhere in the pull
    request title to generate a title at any time. You can also comment
    @sourcery-ai title on the pull request to (re-)generate the title at any time.
  • Generate a pull request summary: Write @sourcery-ai summary anywhere in
    the pull request body to generate a PR summary at any time exactly where you
    want it. You can also comment @sourcery-ai summary on the pull request to
    (re-)generate the summary at any time.
  • Generate reviewer's guide: Comment @sourcery-ai guide on the pull
    request to (re-)generate the reviewer's guide at any time.
  • Resolve all Sourcery comments: Comment @sourcery-ai resolve on the
    pull request to resolve all Sourcery comments. Useful if you've already
    addressed all the comments and don't want to see them anymore.
  • Dismiss all Sourcery reviews: Comment @sourcery-ai dismiss on the pull
    request to dismiss all existing Sourcery reviews. Especially useful if you
    want to start fresh with a new review - don't forget to comment
    @sourcery-ai review to trigger a new review!
  • Generate a plan of action for an issue: Comment @sourcery-ai plan on
    an issue to generate a plan of action for it.

Customizing Your Experience

Access your dashboard to:

  • Enable or disable review features such as the Sourcery-generated pull request
    summary, the reviewer's guide, and others.
  • Change the review language.
  • Add, remove or edit custom review instructions.
  • Adjust other review settings.

Getting Help

Copy link

@sourcery-ai sourcery-ai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We have skipped reviewing this pull request. Here's why:

  • It seems to have been created by a bot ('[Snyk]' found in title). We assume it knows what it's doing!
  • We don't review packaging changes - Let us know if you'd like us to change this.

Copy link

github-actions bot commented Feb 27, 2025

Hey there and thank you for opening this pull request! 👋🏼

We require pull request titles to follow the Conventional Commits specification and it looks like your proposed title needs to be adjusted.

Details:

No release type found in pull request title "[Snyk] Upgrade @playwright/test from 1.42.1 to 1.50.1". Add a prefix to indicate what kind of release this pull request corresponds to. For reference, see https://www.conventionalcommits.org/

Available types:
 - feat: A new feature
 - fix: A bug fix
 - docs: Documentation only changes
 - style: Changes that do not affect the meaning of the code (white-space, formatting, missing semi-colons, etc)
 - refactor: A code change that neither fixes a bug nor adds a feature
 - perf: A code change that improves performance
 - test: Adding missing tests or correcting existing tests
 - build: Changes that affect the build system or external dependencies (example scopes: gulp, broccoli, npm)
 - ci: Changes to our CI configuration files and scripts (example scopes: Travis, Circle, BrowserStack, SauceLabs)
 - chore: Other changes that don't modify src or test files
 - revert: Reverts a previous commit

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.

2 participants