-
Notifications
You must be signed in to change notification settings - Fork 965
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
chore(deps): update dependency @playwright/test to v1.44.0 #10618
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Josh-Walker-GM
added
release:chore
This PR is a chore (means nothing for users)
changesets-ok
Override the changesets check
labels
May 16, 2024
Josh-Walker-GM
pushed a commit
that referenced
this pull request
May 17, 2024
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [@playwright/test](https://playwright.dev) ([source](https://togithub.com/microsoft/playwright)) | [`1.42.1` -> `1.44.0`](https://renovatebot.com/diffs/npm/@playwright%2ftest/1.42.1/1.44.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@playwright%2ftest/1.44.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@playwright%2ftest/1.44.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@playwright%2ftest/1.42.1/1.44.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@playwright%2ftest/1.42.1/1.44.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | --- <details> <summary>microsoft/playwright (@​playwright/test)</summary> [`v1.44.0`](https://togithub.com/microsoft/playwright/releases/tag/v1.44.0) [Compare Source](https://togithub.com/microsoft/playwright/compare/v1.43.1...v1.44.0) **Accessibility assertions** - [expect(locator).toHaveAccessibleName()](https://playwright.dev/docs/api/class-locatorassertions#locator-assertions-to-have-accessible-name) checks if the element has the specified accessible name: ```js const locator = page.getByRole('button'); await expect(locator).toHaveAccessibleName('Submit'); ``` - [expect(locator).toHaveAccessibleDescription()](https://playwright.dev/docs/api/class-locatorassertions#locator-assertions-to-have-accessible-description) checks if the element has the specified accessible description: ```js const locator = page.getByRole('button'); await expect(locator).toHaveAccessibleDescription('Upload a photo'); ``` - [expect(locator).toHaveRole()](https://playwright.dev/docs/api/class-locatorassertions#locator-assertions-to-have-role) checks if the element has the specified ARIA role: ```js const locator = page.getByTestId('save-button'); await expect(locator).toHaveRole('button'); ``` **Locator handler** - After executing the handler added with [page.addLocatorHandler()](https://playwright.dev/docs/api/class-page#page-add-locator-handler), Playwright will now wait until the overlay that triggered the handler is not visible anymore. You can opt-out of this behavior with the new `noWaitAfter` option. - You can use new `times` option in [page.addLocatorHandler()](https://playwright.dev/docs/api/class-page#page-add-locator-handler) to specify maximum number of times the handler should be run. - The handler in [page.addLocatorHandler()](https://playwright.dev/docs/api/class-page#page-add-locator-handler) now accepts the locator as argument. - New [page.removeLocatorHandler()](https://playwright.dev/docs/api/class-page#page-remove-locator-handler) method for removing previously added locator handlers. ```js const locator = page.getByText('This interstitial covers the button'); await page.addLocatorHandler(locator, async overlay => { await overlay.locator('#close').click(); }, { times: 3, noWaitAfter: true }); // Run your tests that can be interrupted by the overlay. // ... await page.removeLocatorHandler(locator); ``` **Miscellaneous options** - [`multipart`](https://playwright.dev/docs/api/class-apirequestcontext#api-request-context-fetch-option-multipart) option in `apiRequestContext.fetch()` now accepts [`FormData`](https://developer.mozilla.org/en-US/docs/Web/API/FormData) and supports repeating fields with the same name. ```js const formData = new FormData(); formData.append('file', new File(['let x = 2024;'], 'f1.js', { type: 'text/javascript' })); formData.append('file', new File(['hello'], 'f2.txt', { type: 'text/plain' })); context.request.post('https://example.com/uploadFiles', { multipart: formData }); ``` - `expect(callback).toPass({ intervals })` can now be configured by `expect.toPass.inervals` option globally in [testConfig.expect](https://playwright.dev/docs/api/class-testconfig#test-config-expect) or per project in [testProject.expect](https://playwright.dev/docs/api/class-testproject#test-project-expect). - `expect(page).toHaveURL(url)` now supports `ignoreCase` [option](https://playwright.dev/docs/api/class-pageassertions#page-assertions-to-have-url-option-ignore-case). - [testProject.ignoreSnapshots](https://playwright.dev/docs/api/class-testproject#test-project-ignore-snapshots) allows to configure per project whether to skip screenshot expectations. **Reporter API** - New method [suite.entries()](https://playwright.dev/docs/api/class-suite#suite-entries) returns child test suites and test cases in their declaration order. [suite.type](https://playwright.dev/docs/api/class-suite#suite-type) and [testCase.type](https://playwright.dev/docs/api/class-testcase#test-case-type) can be used to tell apart test cases and suites in the list. - [Blob](https://playwright.dev/docs/test-reporters#blob-reporter) reporter now allows overriding report file path with a single option `outputFile`. The same option can also be specified as `PLAYWRIGHT_BLOB_OUTPUT_FILE` environment variable that might be more convenient on CI/CD. - [JUnit](https://playwright.dev/docs/test-reporters#junit-reporter) reporter now supports `includeProjectInTestName` option. **Command line** - `--last-failed` CLI option for running only tests that failed in the previous run. First run all tests: ```sh $ npx playwright test Running 103 tests using 5 workers ... 2 failed [chromium] › my-test.spec.ts:8:5 › two ───────────────────────────────────────────────────────── [chromium] › my-test.spec.ts:13:5 › three ────────────────────────────────────────────────────── 101 passed (30.0s) ``` Now fix the failing tests and run Playwright again with `--last-failed` option: ```sh $ npx playwright test --last-failed Running 2 tests using 2 workers 2 passed (1.2s) ``` - Chromium 125.0.6422.14 - Mozilla Firefox 125.0.1 - WebKit 17.4 This version was also tested against the following stable channels: - Google Chrome 124 - Microsoft Edge 124 [`v1.43.1`](https://togithub.com/microsoft/playwright/releases/tag/v1.43.1) [Compare Source](https://togithub.com/microsoft/playwright/compare/v1.43.0...v1.43.1) [microsoft/playwright#30300 - \[REGRESSION]: UI mode restarts if keep storage state[microsoft/playwright#30339 - \[REGRESSION]: Brand new install of playwright, unable to run chromium with show browser using vscode - Chromium 124.0.6367.29 - Mozilla Firefox 124.0 - WebKit 17.4 This version was also tested against the following stable channels: - Google Chrome 123 - Microsoft Edge 123 [`v1.43.0`](https://togithub.com/microsoft/playwright/releases/tag/v1.43.0) [Compare Source](https://togithub.com/microsoft/playwright/compare/v1.42.1...v1.43.0) - Method [browserContext.clearCookies()](https://playwright.dev/docs/api/class-browsercontext#browser-context-clear-cookies) now supports filters to remove only some cookies. ```js // Clear all cookies. await context.clearCookies(); // New: clear cookies with a particular name. await context.clearCookies({ name: 'session-id' }); // New: clear cookies for a particular domain. await context.clearCookies({ domain: 'my-origin.com' }); ``` - New mode `retain-on-first-failure` for [testOptions.trace](https://playwright.dev/docs/api/class-testoptions#test-options-trace). In this mode, trace is recorded for the first run of each test, but not for retires. When test run fails, the trace file is retained, otherwise it is removed. ```js title=playwright.config.ts import { defineConfig } from '@​playwright/test'; export default defineConfig({ use: { trace: 'retain-on-first-failure', }, }); ``` - New property [testInfo.tags](https://playwright.dev/docs/api/class-testinfo#test-info-tags) exposes test tags during test execution. ```js test('example', async ({ page }) => { console.log(test.info().tags); }); ``` - New method [locator.contentFrame()](https://playwright.dev/docs/api/class-locator#locator-content-frame) converts a `Locator` object to a `FrameLocator`. This can be useful when you have a `Locator` object obtained somewhere, and later on would like to interact with the content inside the frame. ```js const locator = page.locator('iframe[name="embedded"]'); // ... const frameLocator = locator.contentFrame(); await frameLocator.getByRole('button').click(); ``` - New method [frameLocator.owner()](https://playwright.dev/docs/api/class-framelocator#frame-locator-owner) converts a `FrameLocator` object to a `Locator`. This can be useful when you have a `FrameLocator` object obtained somewhere, and later on would like to interact with the `iframe` element. ```js const frameLocator = page.frameLocator('iframe[name="embedded"]'); // ... const locator = frameLocator.owner(); await expect(locator).toBeVisible(); ``` ![Playwright UI Mode](https://togithub.com/microsoft/playwright/assets/9881434/61ca7cfc-eb7a-4305-8b62-b6c9f098f300) - See tags in the test list. - Filter by tags by typing `@fast` or clicking on the tag itself. - New shortcuts: - <kbd>F5</kbd> to run tests. - <kbd>Shift</kbd> <kbd>F5</kbd> to stop running tests. - <kbd>Ctrl</kbd> <kbd>\`</kbd> to toggle test output. - Chromium 124.0.6367.29 - Mozilla Firefox 124.0 - WebKit 17.4 This version was also tested against the following stable channels: - Google Chrome 123 - Microsoft Edge 123 </details> --- 📅 **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. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/redwoodjs/redwood). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4zNjMuNSIsInVwZGF0ZWRJblZlciI6IjM3LjM2My41IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
changesets-ok
Override the changesets check
release:chore
This PR is a chore (means nothing for users)
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
1.42.1
->1.44.0
Release Notes
microsoft/playwright (@playwright/test)
v1.44.0
Compare Source
New APIs
Accessibility assertions
expect(locator).toHaveAccessibleName() checks if the element has the specified accessible name:
expect(locator).toHaveAccessibleDescription() checks if the element has the specified accessible description:
expect(locator).toHaveRole() checks if the element has the specified ARIA role:
Locator handler
noWaitAfter
option.times
option in page.addLocatorHandler() to specify maximum number of times the handler should be run.Miscellaneous options
multipart
option inapiRequestContext.fetch()
now acceptsFormData
and supports repeating fields with the same name.expect(callback).toPass({ intervals })
can now be configured byexpect.toPass.inervals
option globally in testConfig.expect or per project in testProject.expect.expect(page).toHaveURL(url)
now supportsignoreCase
option.testProject.ignoreSnapshots allows to configure per project whether to skip screenshot expectations.
Reporter API
outputFile
. The same option can also be specified asPLAYWRIGHT_BLOB_OUTPUT_FILE
environment variable that might be more convenient on CI/CD.includeProjectInTestName
option.Command line
--last-failed
CLI option for running only tests that failed in the previous run.First run all tests:
$ npx playwright test Running 103 tests using 5 workers ... 2 failed [chromium] › my-test.spec.ts:8:5 › two ───────────────────────────────────────────────────────── [chromium] › my-test.spec.ts:13:5 › three ────────────────────────────────────────────────────── 101 passed (30.0s)
Now fix the failing tests and run Playwright again with
--last-failed
option:$ npx playwright test --last-failed Running 2 tests using 2 workers 2 passed (1.2s)
Browser Versions
This version was also tested against the following stable channels:
v1.43.1
Compare Source
Highlights
https://github.com/microsoft/playwright/issues/30300 - [REGRESSION]: UI mode restarts if keep storage statehttps://github.com/microsoft/playwright/issues/303399 - [REGRESSION]: Brand new install of playwright, unable to run chromium with show browser using vscode
Browser Versions
This version was also tested against the following stable channels:
v1.43.0
Compare Source
New APIs
Method browserContext.clearCookies() now supports filters to remove only some cookies.
New mode
retain-on-first-failure
for testOptions.trace. In this mode, trace is recorded for the first run of each test, but not for retires. When test run fails, the trace file is retained, otherwise it is removed.New property testInfo.tags exposes test tags during test execution.
New method locator.contentFrame() converts a
Locator
object to aFrameLocator
. This can be useful when you have aLocator
object obtained somewhere, and later on would like to interact with the content inside the frame.New method frameLocator.owner() converts a
FrameLocator
object to aLocator
. This can be useful when you have aFrameLocator
object obtained somewhere, and later on would like to interact with theiframe
element.UI Mode Updates
@fast
or clicking on the tag itself.Browser Versions
This version was also tested against the following stable channels:
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.
This PR has been generated by Mend Renovate. View repository job log here.