Fix flaky playwright tests #4000
Annotations
9 errors, 4 warnings, and 1 notice
Run Playwright tests:
playwright/testcontainers/utils.ts#L73
1) [Chrome] › crypto/backups-mas.spec.ts:48:9 › Key backup reset from elsewhere › Key backup is disabled when reset from elsewhere
Error: Request to http://localhost:44657/_matrix/client/_matrix/client/v3/room_keys/version failed with status 404: {"errcode":"M_UNRECOGNIZED","error":"Unrecognized request"}
at ../testcontainers/utils.ts:73
71 |
72 | if (!res.ok()) {
> 73 | throw new Error(
| ^
74 | `Request to ${url} failed with status ${res.status()}: ${JSON.stringify(await res.json())}`,
75 | );
76 | }
at TestClientServerAPI.request (/home/runner/work/element-web/element-web/playwright/testcontainers/utils.ts:73:19)
at /home/runner/work/element-web/element-web/playwright/e2e/crypto/backups-mas.spec.ts:75:28
|
Run Playwright tests:
playwright/testcontainers/utils.ts#L73
1) [Chrome] › crypto/backups-mas.spec.ts:48:9 › Key backup reset from elsewhere › Key backup is disabled when reset from elsewhere
Retry #1 ───────────────────────────────────────────────────────────────────────────────────────
Error: Request to http://localhost:43789/_matrix/client/_matrix/client/v3/room_keys/version failed with status 404: {"errcode":"M_UNRECOGNIZED","error":"Unrecognized request"}
at ../testcontainers/utils.ts:73
71 |
72 | if (!res.ok()) {
> 73 | throw new Error(
| ^
74 | `Request to ${url} failed with status ${res.status()}: ${JSON.stringify(await res.json())}`,
75 | );
76 | }
at TestClientServerAPI.request (/home/runner/work/element-web/element-web/playwright/testcontainers/utils.ts:73:19)
at /home/runner/work/element-web/element-web/playwright/e2e/crypto/backups-mas.spec.ts:75:28
|
Run Playwright tests:
playwright/testcontainers/utils.ts#L73
1) [Chrome] › crypto/backups-mas.spec.ts:48:9 › Key backup reset from elsewhere › Key backup is disabled when reset from elsewhere
Retry #2 ───────────────────────────────────────────────────────────────────────────────────────
Error: Request to http://localhost:41645/_matrix/client/_matrix/client/v3/room_keys/version failed with status 404: {"errcode":"M_UNRECOGNIZED","error":"Unrecognized request"}
at ../testcontainers/utils.ts:73
71 |
72 | if (!res.ok()) {
> 73 | throw new Error(
| ^
74 | `Request to ${url} failed with status ${res.status()}: ${JSON.stringify(await res.json())}`,
75 | );
76 | }
at TestClientServerAPI.request (/home/runner/work/element-web/element-web/playwright/testcontainers/utils.ts:73:19)
at /home/runner/work/element-web/element-web/playwright/e2e/crypto/backups-mas.spec.ts:75:28
|
Run Playwright tests:
playwright/e2e/login/utils.ts#L38
2) [Chrome] › login/soft_logout_oauth.spec.ts:40:9 › Soft logout with SSO user › shows the soft-logout page when a request fails, and allows a re-login
Error: Timed out 5000ms waiting for expect(locator).toBeVisible()
Locator: getByRole('heading', { name: 'Create your account' })
Expected: visible
Received: <element(s) not found>
Call log:
- expect.toBeVisible with timeout 5000ms
- waiting for getByRole('heading', { name: 'Create your account' })
at login/utils.ts:38
36 |
37 | // Synapse prompts us to pick a user ID
> 38 | await expect(page.getByRole("heading", { name: "Create your account" })).toBeVisible();
| ^
39 | await page.getByRole("textbox", { name: "Username (required)" }).fill(`alice_${testInfo.testId}`);
40 |
41 | // wait for username validation to start, and complete
at doTokenRegistration (/home/runner/work/element-web/element-web/playwright/e2e/login/utils.ts:38:78)
at Object.user (/home/runner/work/element-web/element-web/playwright/e2e/login/soft_logout_oauth.spec.ts:30:26)
|
Run Playwright tests:
playwright/e2e/right-panel/memberlist.spec.ts#L1
3) [Chrome] › right-panel/memberlist.spec.ts:41:9 › Memberlist › Renders correctly @screenshot ───
Test timeout of 60000ms exceeded.
|
Run Playwright tests:
playwright/pages/ElementAppPage.ts#L96
3) [Chrome] › right-panel/memberlist.spec.ts:41:9 › Memberlist › Renders correctly @screenshot ───
Error: locator.click: Test timeout of 60000ms exceeded.
Call log:
- waiting for getByRole('tree', { name: 'Rooms' }).locator('[title="Test room"],[aria-label="Test room"]').first()
at ../pages/ElementAppPage.ts:96
94 | .locator(`[title="${name}"],[aria-label="${name}"]`)
95 | .first()
> 96 | .click();
| ^
97 | }
98 |
99 | public async viewRoomById(roomId: string): Promise<void> {
at ElementAppPage.viewRoomByName (/home/runner/work/element-web/element-web/playwright/pages/ElementAppPage.ts:96:14)
at /home/runner/work/element-web/element-web/playwright/e2e/right-panel/memberlist.spec.ts:42:19
|
Run Playwright tests:
playwright/e2e/widgets/layout.spec.ts#L33
4) [Chrome] › widgets/layout.spec.ts:73:9 › Widget Layout › should be set properly @screenshot ───
Test timeout of 30000ms exceeded while running "beforeEach" hook.
31 | let roomId: string;
32 | let widgetUrl: string;
> 33 | test.beforeEach(async ({ webserver, app, user }) => {
| ^
34 | widgetUrl = webserver.start(WIDGET_HTML);
35 |
36 | roomId = await app.client.createRoom({ name: ROOM_NAME });
at /home/runner/work/element-web/element-web/playwright/e2e/widgets/layout.spec.ts:33:10
|
Run Playwright tests:
playwright/pages/ElementAppPage.ts#L96
4) [Chrome] › widgets/layout.spec.ts:73:9 › Widget Layout › should be set properly @screenshot ───
Error: locator.click: Test timeout of 30000ms exceeded.
Call log:
- waiting for getByRole('tree', { name: 'Rooms' }).locator('[title="Test Room"],[aria-label="Test Room"]').first()
at ../pages/ElementAppPage.ts:96
94 | .locator(`[title="${name}"],[aria-label="${name}"]`)
95 | .first()
> 96 | .click();
| ^
97 | }
98 |
99 | public async viewRoomById(roomId: string): Promise<void> {
at ElementAppPage.viewRoomByName (/home/runner/work/element-web/element-web/playwright/pages/ElementAppPage.ts:96:14)
at /home/runner/work/element-web/element-web/playwright/e2e/widgets/layout.spec.ts:70:19
|
Run Playwright tests
Process completed with exit code 1.
|
Run Playwright tests:
[Chrome] › login/login-consent.spec.ts#L1
[Chrome] › login/login-consent.spec.ts took 48.1s
|
Run Playwright tests:
[Chrome] › app-loading/guest-registration.spec.ts#L1
[Chrome] › app-loading/guest-registration.spec.ts took 25.1s
|
Run Playwright tests:
[Chrome] › user-onboarding/user-onboarding-new.spec.ts#L1
[Chrome] › user-onboarding/user-onboarding-new.spec.ts took 24.3s
|
Run Playwright tests:
[Chrome] › register/register.spec.ts#L1
[Chrome] › register/register.spec.ts took 16.6s
|
Run Playwright tests
1 failed
[Chrome] › crypto/backups-mas.spec.ts:48:9 › Key backup reset from elsewhere › Key backup is disabled when reset from elsewhere
3 flaky
[Chrome] › login/soft_logout_oauth.spec.ts:40:9 › Soft logout with SSO user › shows the soft-logout page when a request fails, and allows a re-login
[Chrome] › right-panel/memberlist.spec.ts:41:9 › Memberlist › Renders correctly @screenshot ────
[Chrome] › widgets/layout.spec.ts:73:9 › Widget Layout › should be set properly @screenshot ────
40 passed (7.7m)
|
Loading