c4b98ff769
chore(deps): update playwright ( #29279 )
...
[](https://renovatebot.com )
This PR contains the following updates:
| Package | Change | Age | Adoption | Passing | Confidence | Type |
Update |
|---|---|---|---|---|---|---|---|
| [@axe-core/playwright](https://togithub.com/dequelabs/axe-core-npm ) |
[`4.8.5` ->
`4.9.0`](https://renovatebot.com/diffs/npm/@axe-core%2fplaywright/4.8.5/4.9.0 )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
| devDependencies | minor |
| [@playwright/test](https://playwright.dev )
([source](https://togithub.com/microsoft/playwright )) | [`1.42.1` ->
`1.43.1`](https://renovatebot.com/diffs/npm/@playwright%2ftest/1.42.1/1.43.1 )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
| devDependencies | minor |
| mcr.microsoft.com/playwright | `v1.42.1` -> `v1.43.1` |
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
| final | minor |
---
### Release Notes
<details>
<summary>dequelabs/axe-core-npm (@​axe-core/playwright)</summary>
###
[`v4.9.0`](https://togithub.com/dequelabs/axe-core-npm/blob/HEAD/CHANGELOG.md#490-2024-04-01 )
[Compare
Source](https://togithub.com/dequelabs/axe-core-npm/compare/v4.8.5...v4.9.0 )
##### Bug Fixes
- get correct new window handle with Selenium 3 workaround
([#​1031](https://togithub.com/dequelabs/axe-core-npm/issues/1031 ))
([b72c735](b72c73571c )),
closes
[#​1027](https://togithub.com/dequelabs/axe-core-npm/issues/1027 )
[/github.com/dequelabs/axe-core-maven-html/blob/ad58b26a8d0e2f1afed33b2c5cbca22b54644b99/selenium/src/main/java/com/deque/html/axecore/extensions/WebDriverExtensions.java#L126](ad58b26a8d/selenium/src/main/java/com/deque/html/axecore/extensions/WebDriverExtensions.java/issues/L126 )
[#​936](https://togithub.com/dequelabs/axe-core-npm/issues/936 )
##### Features
- Update axe-core to v4.9.0
([#​1028](https://togithub.com/dequelabs/axe-core-npm/issues/1028 ))
([7e152b6](7e152b65ff ))
####
[4.8.5](https://togithub.com/dequelabs/axe-core-npm/compare/v4.8.4...v4.8.5 )
(2024-02-08)
##### Bug Fixes
- Update axe-core to v4.8.4
([#​1008](https://togithub.com/dequelabs/axe-core-npm/issues/1008 ))
([d54f145](d54f145a40 ))
####
[4.8.4](https://togithub.com/dequelabs/axe-core-npm/compare/v4.8.3...v4.8.4 )
(2024-01-23)
##### Bug Fixes
- **webdriverjs:** use new headless argument to fix
selenium-webdriver@4.17.0 breaking release
([#​992](https://togithub.com/dequelabs/axe-core-npm/issues/992 ))
([0daba98](0daba98684 ))
####
[4.8.3](https://togithub.com/dequelabs/axe-core-npm/compare/v4.8.1...v4.8.3 )
(2024-01-09)
##### Bug Fixes
- allow cjs version of packages to export a default value
([#​943](https://togithub.com/dequelabs/axe-core-npm/issues/943 ))
([b5aee34](b5aee3424f ))
- Update axe-core to v4.8.3
([#​968](https://togithub.com/dequelabs/axe-core-npm/issues/968 ))
([be9002c](be9002c518 ))
- Update axe-core to v4.8.3
([#​978](https://togithub.com/dequelabs/axe-core-npm/issues/978 ))
([1c83740](1c837404aa ))
- **webdriverio:** fix types between v8 and \<v8
([#​962](https://togithub.com/dequelabs/axe-core-npm/issues/962 ))
([0511338](0511338017 ))
- **webdriverio:** work with
[@​wdio/globals](https://togithub.com/wdio/globals )
([#​882](https://togithub.com/dequelabs/axe-core-npm/issues/882 ))
([2e016b4](2e016b4e17 ))
- **webdriverjs:** fix default commonJs export
([#​927](https://togithub.com/dequelabs/axe-core-npm/issues/927 ))
([b07d38c](b07d38cc2d ))
##### Reverts
- Revert "fix: Update axe-core to v4.8.3
([#​968](https://togithub.com/dequelabs/axe-core-npm/issues/968 ))"
([#​977](https://togithub.com/dequelabs/axe-core-npm/issues/977 ))
([0aff5d8](0aff5d86e5 )),
closes
[#​968](https://togithub.com/dequelabs/axe-core-npm/issues/968 )
[#​977](https://togithub.com/dequelabs/axe-core-npm/issues/977 )
- Revert "chore: merge master into develop
([#​955](https://togithub.com/dequelabs/axe-core-npm/issues/955 ))"
([#​956](https://togithub.com/dequelabs/axe-core-npm/issues/956 ))
([07e7d9e](07e7d9e7e1 )),
closes
[#​955](https://togithub.com/dequelabs/axe-core-npm/issues/955 )
[#​956](https://togithub.com/dequelabs/axe-core-npm/issues/956 )
####
[4.8.2](https://togithub.com/dequelabs/axe-core-npm/compare/v4.8.1...v4.8.2 )
(2023-11-30)
##### Bug Fixes
- allow cjs version of packages to export a default value
([#​943](https://togithub.com/dequelabs/axe-core-npm/issues/943 ))
([b5aee34](b5aee3424f ))
- **webdriverio:** work with
[@​wdio/globals](https://togithub.com/wdio/globals )
([#​882](https://togithub.com/dequelabs/axe-core-npm/issues/882 ))
([2e016b4](2e016b4e17 ))
- **webdriverjs:** fix default commonJs export
([#​927](https://togithub.com/dequelabs/axe-core-npm/issues/927 ))
([b07d38c](b07d38cc2d ))
####
[4.8.1](https://togithub.com/dequelabs/axe-core-npm/compare/v4.7.3...v4.8.1 )
(2023-10-11)
##### Bug Fixes
- **cli:** better error message for ChromeDriver version mismatch
([#​680](https://togithub.com/dequelabs/axe-core-npm/issues/680 ))
([10cf350](10cf350944 )),
closes
[#​679](https://togithub.com/dequelabs/axe-core-npm/issues/679 )
- **cli:** improve error message on script timeout
([#​681](https://togithub.com/dequelabs/axe-core-npm/issues/681 ))
([b407c6c](b407c6cf1f ))
- **cli:** include required files when publishing
([#​851](https://togithub.com/dequelabs/axe-core-npm/issues/851 ))
([3f1ff4b](3f1ff4bd46 ))
- **cli:** respect --exit regardless of other flags
([#​750](https://togithub.com/dequelabs/axe-core-npm/issues/750 ))
([bfa2328](bfa232800d ))
- pin axe-core version to accept patch updates only
([#​838](https://togithub.com/dequelabs/axe-core-npm/issues/838 ))
([2456ed6](2456ed6417 ))
- skip unloaded iframes for all apis
([#​752](https://togithub.com/dequelabs/axe-core-npm/issues/752 ))
([0b15629](0b15629ac1 ))
##### Features
- **cli:** add --chrome-path option
([#​700](https://togithub.com/dequelabs/axe-core-npm/issues/700 ))
([#​704](https://togithub.com/dequelabs/axe-core-npm/issues/704 ))
([ada5d28](ada5d28ccb ))
- **react:** export `logToConsole` fn
([#​812](https://togithub.com/dequelabs/axe-core-npm/issues/812 ))
([480fb12](480fb1268f ))
- Update axe-core to v4.8.2
([#​835](https://togithub.com/dequelabs/axe-core-npm/issues/835 ))
([2ac1eaf](2ac1eafa63 ))
</details>
<details>
<summary>microsoft/playwright (@​playwright/test)</summary>
###
[`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 )
##### Highlights
[https://github.com/microsoft/playwright/issues/30300 ](https://togithub.com/microsoft/playwright/issues/30300 )
- \[REGRESSION]: UI mode restarts if keep storage
state[https://github.com/microsoft/playwright/issues/30339 ](https://togithub.com/microsoft/playwright/issues/30339 )9
- \[REGRESSION]: Brand new install of playwright, unable to run chromium
with show browser using vscode
##### Browser Versions
- 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 )
#### New APIs
- 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();
```
#### UI Mode Updates

- 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.
#### Browser Versions
- 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>
---
### Configuration
📅 **Schedule**: Branch creation - "every weekday before 11am" (UTC),
Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.
♻ **Rebasing**: Never, or you tick the rebase/retry checkbox.
👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config help](https://togithub.com/renovatebot/renovate/discussions ) if
that's undesired.
---
- [ ] <!-- 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/ionic-team/ionic-framework ).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4yNjkuMiIsInVwZGF0ZWRJblZlciI6IjM3LjMyMS4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9-->
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-26 20:33:57 +00:00
e98620ee99
test(ci): run tests in docker container ( #28893 )
...
Issue number: Internal
---------
<!-- Please do not submit updates to dependencies unless it fixes an
issue. -->
<!-- Please try to limit your pull request to one type (bugfix, feature,
etc). Submit multiple pull requests if needed. -->
## What is the current behavior?
<!-- Please describe the current behavior that you are modifying. -->
The team currently faces two challenges:
1. Verifying visual changes locally is difficult because we cannot use
the existing ground truths as they were generated in Linux environments
and most of our team uses either macOS or Windows. While team members
can generate ground truths in the correct environment, they need to
remember to do that first before making changes.
2. Updating visual diffs is time consuming and can only be done by team
members. Our GitHub Action runs the entire test suite which can take ~10
even if only a handful of screenshots are generated. Additionally, this
job can only be run by team members meaning community contributors
cannot update/add screenshots. This limits them to non-visual tasks when
contributing. In the event that they do want to make visual changes, the
team needs to copy all their code into a branch and manually run
screenshot diffs for them.
## What is the new behavior?
<!-- Please describe the behavior or changes that are being added by
this PR. -->
- This PR introduces the ability to run all Playwright tests inside of a
Docker container using an image with Playwright dependencies. The
container will have access to the local project, so developers can make
changes and then run tests in the container after the changes are
compiled. This enables anyone to propose new screenshot changes.
However, the "update screenshot" job will still be available for folks
who do not want/are unable to use docker.
- There are some typeface differences between GH Actions and the Docker
image which is why there are a handful of screenshots that needed to be
updated.
One risk here is that the Playwright npm and Docker image versions must
be kept in sync. As a result, I also updatRenovate to allow us to auto
update the npm and Docker image versions at the same time.
## Does this introduce a breaking change?
- [ ] Yes
- [x] No
<!--
If this introduces a breaking change:
1. Describe the impact and migration path for existing applications
below.
3. Update the BREAKING.md file with the breaking change.
4. Add "BREAKING CHANGE: [...]" to the commit description when merging.
See
https://github.com/ionic-team/ionic-framework/blob/main/.github/CONTRIBUTING.md#footer
for more information.
-->
## Other information
<!-- Any other information that is important to this PR such as
screenshots of how the component looks before and after the change. -->
⚠️ There are still some issues I need to sort out with mounting the
local project on Windows. However, using Ubuntu with the linux subsystem
for windows can be used as a workaround. I'd like to merge this so we
can start testing it in our day-to-day workflow and ironing out any
bugs.
---------
Co-authored-by: ionitron <hi@ionicframework.com>
2024-03-18 14:08:30 +00:00