Update dependency testcontainers to v11.1.0 #8892
end-to-end-tests.yaml
on: pull_request
Build Element-Web
2m 57s
Matrix: playwright
Downstream Playwright tests [element-modules]
/
Run Playwright end-to-end tests & upload html report
end-to-end-tests
58s
Annotations
14 errors and 6 notices
|
[Chrome] › playwright/e2e/share-dialog/share-by-url.spec.ts:19:9 › share from URL › should share message when users navigates to share URL:
playwright/pages/ElementAppPage.ts#L96
1) [Chrome] › playwright/e2e/share-dialog/share-by-url.spec.ts:19:9 › share from URL › should share message when users navigates to share URL
Error: locator.click: Test timeout of 30000ms exceeded.
Call log:
- waiting for getByRole('tree', { name: 'Rooms' }).locator('[title="A test room"],[aria-label="A 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/share-dialog/share-by-url.spec.ts:28:19
|
|
[Chrome] › playwright/e2e/share-dialog/share-by-url.spec.ts:19:9 › share from URL › should share message when users navigates to share URL:
playwright/e2e/share-dialog/share-by-url.spec.ts#L0
1) [Chrome] › playwright/e2e/share-dialog/share-by-url.spec.ts:19:9 › share from URL › should share message when users navigates to share URL
Test timeout of 30000ms exceeded.
|
|
[Chrome] › playwright/e2e/oidc/oidc-native.spec.ts:81:9 › OIDC Native › it should log out the user & wipe data when logging out via MAS @no-firefox @no-webkit @screenshot:
playwright/e2e/oidc/oidc-native.spec.ts#L0
1) [Chrome] › playwright/e2e/oidc/oidc-native.spec.ts:81:9 › OIDC Native › it should log out the user & wipe data when logging out via MAS @no-firefox @no-webkit @screenshot
Error: Request to http://localhost:38571/_matrix/client/v3/publicRooms failed with status 500: {"errcode":"M_FORBIDDEN","error":"User not found"}
at ClientServerApi.request (/home/runner/work/element-web/element-web/node_modules/@element-hq/element-web-playwright-common/lib/utils/api.js:38:19)
at StartedSynapseWithMasContainer.deletePublicRooms (/home/runner/work/element-web/element-web/node_modules/@element-hq/element-web-playwright-common/lib/testcontainers/synapse.js:277:34)
at StartedSynapseWithMasContainer.onTestFinished (/home/runner/work/element-web/element-web/node_modules/@element-hq/element-web-playwright-common/lib/testcontainers/synapse.js:272:9)
at Object.context (/home/runner/work/element-web/element-web/node_modules/@element-hq/element-web-playwright-common/lib/fixtures/services.js:112:9)
|
|
[Chrome] › playwright/e2e/crypto/event-shields.spec.ts:164:13 › Cryptography › event shields › Should show a grey padlock for a key restored from backup:
playwright/e2e/crypto/event-shields.spec.ts#L202
5) [Chrome] › playwright/e2e/crypto/event-shields.spec.ts:164:13 › Cryptography › event shields › Should show a grey padlock for a key restored from backup
Error: Timed out 5000ms waiting for expect(locator).toContainText(expected)
Locator: locator('.mx_EventTile_last')
Expected string: "test encrypted 1"
Received: <element(s) not found>
Call log:
- Expect "toContainText" with timeout 5000ms
- waiting for locator('.mx_EventTile_last')
200 | /* go back to the test room and find Bob's message again */
201 | await app.viewRoomById(testRoomId);
> 202 | await expect(lastTile).toContainText("test encrypted 1");
| ^
203 | // The gray shield would be a mx_EventTile_e2eIcon_normal. The red shield would be a mx_EventTile_e2eIcon_warning.
204 | // No shield would have no div mx_EventTile_e2eIcon at all.
205 | await expect(lastTileE2eIcon).toHaveClass(/mx_EventTile_e2eIcon_normal/);
at /home/runner/work/element-web/element-web/playwright/e2e/crypto/event-shields.spec.ts:202:36
|
|
[Chrome] › playwright/e2e/crypto/device-verification.spec.ts:122:9 › Device verification › Verify device with QR code during login @no-webkit:
playwright/e2e/crypto/device-verification.spec.ts#L0
4) [Chrome] › playwright/e2e/crypto/device-verification.spec.ts:122:9 › Device verification › Verify device with QR code during login @no-webkit
Error: apiRequestContext.fetch: Target page, context or browser has been closed
Call log:
- → POST http://localhost:40145/_synapse/admin/v1/register
- user-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.23 Safari/537.36
- accept: */*
- accept-encoding: gzip,deflate,br
- content-type: application/json
- content-length: 310
at Api.request (/home/runner/work/element-web/element-web/node_modules/@element-hq/element-web-playwright-common/lib/utils/api.js:28:41)
at StartedSynapseContainer.registerUserInternal (/home/runner/work/element-web/element-web/node_modules/@element-hq/element-web-playwright-common/lib/testcontainers/synapse.js:287:42)
at Object.credentials (/home/runner/work/element-web/element-web/node_modules/@element-hq/element-web-playwright-common/lib/fixtures/user.js:16:29)
|
|
[Chrome] › playwright/e2e/crypto/device-verification.spec.ts:122:9 › Device verification › Verify device with QR code during login @no-webkit:
playwright/e2e/crypto/device-verification.spec.ts#L97
4) [Chrome] › playwright/e2e/crypto/device-verification.spec.ts:122:9 › Device verification › Verify device with QR code during login @no-webkit
Error: "route.fetch: Test ended." while running route callback.
Consider awaiting `await page.unrouteAll({ behavior: 'ignoreErrors' })`
before the end of the test to ignore remaining routes in flight.
95 | await route.fulfill({ json: {} });
96 | await new Promise((f) => setTimeout(f, 1000));
> 97 | await route.fetch();
| ^
98 | });
99 |
100 | await logIntoElement(page, credentials);
at /home/runner/work/element-web/element-web/playwright/e2e/crypto/device-verification.spec.ts:97:25
|
|
[Chrome] › playwright/e2e/audio-player/audio-player.spec.ts:250:9 › Audio player › should support creating a reply chain with multiple audio files @no-firefox @no-webkit @screenshot:
playwright/e2e/audio-player/audio-player.spec.ts#L283
3) [Chrome] › playwright/e2e/audio-player/audio-player.spec.ts:250:9 › Audio player › should support creating a reply chain with multiple audio files @no-firefox @no-webkit @screenshot
Error: Timed out 5000ms waiting for expect(locator).toHaveCount(expected)
Locator: locator('.mx_EventTile_last').locator('.mx_ReplyChain')
Expected: 2
Received: 1
Call log:
- Expect "toHaveCount" with timeout 5000ms
- waiting for locator('.mx_EventTile_last').locator('.mx_ReplyChain')
9 × locator resolved to 1 element
- unexpected value "1"
281 |
282 | // Assert that there are two "mx_ReplyChain" elements
> 283 | await expect(tile.locator(".mx_ReplyChain")).toHaveCount(2);
| ^
284 |
285 | // Assert that one line contains the user name
286 | await expect(tile.locator(".mx_ReplyChain .mx_ReplyTile_sender").getByText(user.displayName)).toBeVisible();
at /home/runner/work/element-web/element-web/playwright/e2e/audio-player/audio-player.spec.ts:283:58
|
|
[Chrome] › playwright/e2e/audio-player/audio-player.spec.ts:222:9 › Audio player › should support replying to audio file with another audio file @no-firefox @no-webkit @screenshot:
playwright/e2e/audio-player/audio-player.spec.ts#L244
2) [Chrome] › playwright/e2e/audio-player/audio-player.spec.ts:222:9 › Audio player › should support replying to audio file with another audio file @no-firefox @no-webkit @screenshot
Error: Timed out 5000ms waiting for expect(locator).toBeVisible()
Locator: locator('.mx_EventTile_last').locator('.mx_ReplyChain_wrapper .mx_MFileBody_info[role=\'button\']').locator('.mx_MFileBody_info_filename')
Expected: visible
Received: <element(s) not found>
Call log:
- Expect "toBeVisible" with timeout 5000ms
- waiting for locator('.mx_EventTile_last').locator('.mx_ReplyChain_wrapper .mx_MFileBody_info[role=\'button\']').locator('.mx_MFileBody_info_filename')
242 | const button = tile.locator(".mx_ReplyChain_wrapper .mx_MFileBody_info[role='button']");
243 | // Assert that the file button has file name
> 244 | await expect(button.locator(".mx_MFileBody_info_filename")).toBeVisible();
| ^
245 |
246 | await takeSnapshots(page, app, "Selected EventTile of audio player with a reply");
247 | },
at /home/runner/work/element-web/element-web/playwright/e2e/audio-player/audio-player.spec.ts:244:73
|
|
[Chrome] › playwright/e2e/app-loading/stored-credentials.spec.ts:26:5 › Shows the last known page on reload:
playwright/e2e/app-loading/stored-credentials.spec.ts#L42
1) [Chrome] › playwright/e2e/app-loading/stored-credentials.spec.ts:26:5 › Shows the last known page on reload
Error: Timed out 5000ms waiting for expect(locator).toHaveURL(expected)
Locator: locator(':root')
Expected pattern: /\/#\/room\//
Received string: "http://localhost:8080/#/home"
Call log:
- Expect "toHaveURL" with timeout 5000ms
- waiting for locator(':root')
9 × locator resolved to <html lang="en">…</html>
- unexpected value "http://localhost:8080/#/home"
40 |
41 | // Check that the room reloaded
> 42 | await expect(page).toHaveURL(/\/#\/room\//);
| ^
43 | await expect(page.locator(".mx_RoomHeader")).toContainText("Test Room");
44 | });
45 |
at /home/runner/work/element-web/element-web/playwright/e2e/app-loading/stored-credentials.spec.ts:42:24
|
|
[Chrome] › playwright/e2e/timeline/timeline.spec.ts:1024:13 › Timeline › message sending › should display a reply chain @no-firefox @no-webkit @screenshot:
playwright/e2e/timeline/timeline.spec.ts#L1107
2) [Chrome] › playwright/e2e/timeline/timeline.spec.ts:1024:13 › Timeline › message sending › should display a reply chain @no-firefox @no-webkit @screenshot
Error: expect(locator).toHaveScreenshot(expected)
41 pixels (ratio 0.01 of all image pixels) are different.
Expected: /home/runner/work/element-web/element-web/playwright/snapshots/timeline/timeline.spec.ts/event-tile-reply-chains-irc-modern-linux.png
Received: /home/runner/work/element-web/element-web/playwright/test-results/timeline-timeline-Timeline-801c1-hould-display-a-reply-chain-Chrome/event-tile-reply-chains-irc-modern-actual.png
Diff: /home/runner/work/element-web/element-web/playwright/test-results/timeline-timeline-Timeline-801c1-hould-display-a-reply-chain-Chrome/event-tile-reply-chains-irc-modern-diff.png
Call log:
- Expect "toHaveScreenshot(event-tile-reply-chains-irc-modern.png)" with timeout 5000ms
- verifying given screenshot expectation
- waiting for locator('.mx_EventTile_last')
- locator resolved to <li tabindex="-1" aria-live="off" data-self="true" aria-atomic="true" data-layout="group" data-has-reply="true" data-event-id="$kMicdDslw8jmNU1XnQln9o8Ws9TZkHV-Lz0sCR56IlE" data-scroll-tokens="$kMicdDslw8jmNU1XnQln9o8Ws9TZkHV-Lz0sCR56IlE" class="mx_EventTile mx_EventTile_continuation mx_EventTile_last mx_EventTile_lastInSection">…</li>
- taking element screenshot
- disabled all CSS animations
- waiting for fonts to load...
- fonts loaded
- attempting scroll into view action
- waiting for element to be stable
- 29 pixels (ratio 0.01 of all image pixels) are different.
- waiting 100ms before taking screenshot
- waiting for locator('.mx_EventTile_last')
- locator resolved to <li tabindex="-1" aria-live="off" data-self="true" aria-atomic="true" data-layout="group" data-has-reply="true" data-event-id="$kMicdDslw8jmNU1XnQln9o8Ws9TZkHV-Lz0sCR56IlE" data-scroll-tokens="$kMicdDslw8jmNU1XnQln9o8Ws9TZkHV-Lz0sCR56IlE" class="mx_EventTile mx_EventTile_continuation mx_EventTile_last mx_EventTile_lastInSection">…</li>
- taking element screenshot
- disabled all CSS animations
- waiting for fonts to load...
- fonts loaded
- attempting scroll into view action
- waiting for element to be stable
- 12 pixels (ratio 0.01 of all image pixels) are different.
- waiting 250ms before taking screenshot
- waiting for locator('.mx_EventTile_last')
- locator resolved to <li tabindex="-1" aria-live="off" data-self="true" aria-atomic="true" data-layout="group" data-has-reply="true" data-event-id="$kMicdDslw8jmNU1XnQln9o8Ws9TZkHV-Lz0sCR56IlE" data-scroll-tokens="$kMicdDslw8jmNU1XnQln9o8Ws9TZkHV-Lz0sCR56IlE" class="mx_EventTile mx_EventTile_continuation mx_EventTile_last mx_EventTile_lastInSection">…</li>
- taking element screenshot
- disabled all CSS animations
- waiting for fonts to load...
- fonts loaded
- attempting scroll into view action
- waiting for element to be stable
- captured a stable screenshot
- 41 pixels (ratio 0.01 of all image pixels) are different.
1105 |
1106 | // Take a snapshot on modern layout
> 1107 | await expect(page.locator(".mx_EventTile_last")).toMatchScreenshot(
| ^
1108 | "event-tile-reply-chains-irc-modern.png",
1109 | screenshotOptions,
1110 | );
at /home/runner/work/element-web/element-web/playwright/e2e/timeline/timeline.spec.ts:1107:62
|
|
[Chrome] › playwright/e2e/timeline/timeline.spec.ts:228:13 › Timeline › configure room › should click 'collapse' on the first hovered info event line inside GELS on bubble layout @screenshot:
playwright/e2e/timeline/timeline.spec.ts#L256
1) [Chrome] › playwright/e2e/timeline/timeline.spec.ts:228:13 › Timeline › configure room › should click 'collapse' on the first hovered info event line inside GELS on bubble layout @screenshot
Error: expect(locator).toHaveScreenshot(expected)
210 pixels (ratio 0.01 of all image pixels) are different.
Expected: /home/runner/work/element-web/element-web/playwright/snapshots/timeline/timeline.spec.ts/expanded-gels-bubble-layout-linux.png
Received: /home/runner/work/element-web/element-web/playwright/test-results/timeline-timeline-Timeline-d0f12-nside-GELS-on-bubble-layout-Chrome/expanded-gels-bubble-layout-actual.png
Diff: /home/runner/work/element-web/element-web/playwright/test-results/timeline-timeline-Timeline-d0f12-nside-GELS-on-bubble-layout-Chrome/expanded-gels-bubble-layout-diff.png
Call log:
- Expect "toHaveScreenshot(expanded-gels-bubble-layout.png)" with timeout 5000ms
- verifying given screenshot expectation
- waiting for locator('.mx_MainSplit')
- locator resolved to <div class="mx_MainSplit">…</div>
- taking element screenshot
- disabled all CSS animations
- waiting for fonts to load...
- fonts loaded
- attempting scroll into view action
- waiting for element to be stable
- 210 pixels (ratio 0.01 of all image pixels) are different.
- waiting 100ms before taking screenshot
- waiting for locator('.mx_MainSplit')
- locator resolved to <div class="mx_MainSplit">…</div>
- taking element screenshot
- disabled all CSS animations
- waiting for fonts to load...
- fonts loaded
- attempting scroll into view action
- waiting for element to be stable
- captured a stable screenshot
- 210 pixels (ratio 0.01 of all image pixels) are different.
254 |
255 | // Save snapshot of expanded generic event list summary on bubble layout
> 256 | await expect(page.locator(".mx_MainSplit")).toMatchScreenshot("expanded-gels-bubble-layout.png", {
| ^
257 | // Exclude timestamp from snapshot
258 | mask: [page.locator(".mx_MessageTimestamp")],
259 | });
at /home/runner/work/element-web/element-web/playwright/e2e/timeline/timeline.spec.ts:256:61
|
|
[Chrome] › playwright/e2e/left-panel/room-list-panel/room-list.spec.ts:142:13 › Room list › Room list › should scroll to the current room:
playwright/e2e/left-panel/room-list-panel/room-list.spec.ts#L150
2) [Chrome] › playwright/e2e/left-panel/room-list-panel/room-list.spec.ts:142:13 › Room list › Room list › should scroll to the current room
Error: locator.click: Test timeout of 30000ms exceeded.
Call log:
- waiting for getByTestId('room-list').getByRole('gridcell', { name: 'Open room room0' })
148 |
149 | await expect(roomListView.getByRole("gridcell", { name: "Open room room0" })).toBeVisible();
> 150 | await roomListView.getByRole("gridcell", { name: "Open room room0" }).click();
| ^
151 |
152 | const filters = page.getByRole("listbox", { name: "Room list filters" });
153 | await filters.getByRole("option", { name: "People" }).click();
at /home/runner/work/element-web/element-web/playwright/e2e/left-panel/room-list-panel/room-list.spec.ts:150:83
|
|
[Chrome] › playwright/e2e/left-panel/room-list-panel/room-list.spec.ts:142:13 › Room list › Room list › should scroll to the current room:
playwright/e2e/left-panel/room-list-panel/room-list.spec.ts#L0
2) [Chrome] › playwright/e2e/left-panel/room-list-panel/room-list.spec.ts:142:13 › Room list › Room list › should scroll to the current room
Test timeout of 30000ms exceeded.
|
|
[Chrome] › playwright/e2e/left-panel/room-list-panel/room-list.spec.ts:44:13 › Room list › Room list › should render the room list @screenshot:
playwright/e2e/left-panel/room-list-panel/room-list.spec.ts#L54
1) [Chrome] › playwright/e2e/left-panel/room-list-panel/room-list.spec.ts:44:13 › Room list › Room list › should render the room list @screenshot
Error: expect(locator).toHaveScreenshot(expected)
9210 pixels (ratio 0.05 of all image pixels) are different.
Expected: /home/runner/work/element-web/element-web/playwright/snapshots/left-panel/room-list-panel/room-list.spec.ts/room-list-scrolled-linux.png
Received: /home/runner/work/element-web/element-web/playwright/test-results/left-panel-room-list-panel-b32ce-should-render-the-room-list-Chrome/room-list-scrolled-actual.png
Diff: /home/runner/work/element-web/element-web/playwright/test-results/left-panel-room-list-panel-b32ce-should-render-the-room-list-Chrome/room-list-scrolled-diff.png
Call log:
- Expect "toHaveScreenshot(room-list-scrolled.png)" with timeout 5000ms
- verifying given screenshot expectation
- waiting for getByTestId('room-list')
- locator resolved to <div class="mx_RoomList" data-testid="room-list">…</div>
- taking element screenshot
- disabled all CSS animations
- waiting for fonts to load...
- fonts loaded
- attempting scroll into view action
- waiting for element to be stable
- 9210 pixels (ratio 0.05 of all image pixels) are different.
- waiting 100ms before taking screenshot
- waiting for getByTestId('room-list')
- locator resolved to <div class="mx_RoomList" data-testid="room-list">…</div>
- taking element screenshot
- disabled all CSS animations
- waiting for fonts to load...
- fonts loaded
- attempting scroll into view action
- waiting for element to be stable
- captured a stable screenshot
- 9210 pixels (ratio 0.05 of all image pixels) are different.
52 | await page.mouse.wheel(0, 1000);
53 | await expect(roomListView.getByRole("gridcell", { name: "Open room room0" })).toBeVisible();
> 54 | await expect(roomListView).toMatchScreenshot("room-list-scrolled.png");
| ^
55 | });
56 |
57 | test("should open the room when it is clicked", async ({ page, app, user }) => {
at /home/runner/work/element-web/element-web/playwright/e2e/left-panel/room-list-panel/room-list.spec.ts:54:40
|
|
🎭 Playwright Run Summary
2 skipped
62 passed (4.0m)
|
|
🎭 Playwright Run Summary
1 flaky
[Chrome] › playwright/e2e/share-dialog/share-by-url.spec.ts:19:9 › share from URL › should share message when users navigates to share URL
65 passed (4.9m)
|
|
🎭 Playwright Run Summary
1 flaky
[Chrome] › playwright/e2e/oidc/oidc-native.spec.ts:81:9 › OIDC Native › it should log out the user & wipe data when logging out via MAS @no-firefox @no-webkit @screenshot
49 passed (7.5m)
|
|
🎭 Playwright Run Summary
5 flaky
[Chrome] › playwright/e2e/app-loading/stored-credentials.spec.ts:26:5 › Shows the last known page on reload
[Chrome] › playwright/e2e/audio-player/audio-player.spec.ts:222:9 › Audio player › should support replying to audio file with another audio file @no-firefox @no-webkit @screenshot
[Chrome] › playwright/e2e/audio-player/audio-player.spec.ts:250:9 › Audio player › should support creating a reply chain with multiple audio files @no-firefox @no-webkit @screenshot
[Chrome] › playwright/e2e/crypto/device-verification.spec.ts:122:9 › Device verification › Verify device with QR code during login @no-webkit
[Chrome] › playwright/e2e/crypto/event-shields.spec.ts:164:13 › Cryptography › event shields › Should show a grey padlock for a key restored from backup
65 passed (8.0m)
|
|
🎭 Playwright Run Summary
2 flaky
[Chrome] › playwright/e2e/timeline/timeline.spec.ts:228:13 › Timeline › configure room › should click 'collapse' on the first hovered info event line inside GELS on bubble layout @screenshot
[Chrome] › playwright/e2e/timeline/timeline.spec.ts:1024:13 › Timeline › message sending › should display a reply chain @no-firefox @no-webkit @screenshot
2 skipped
82 passed (8.1m)
|
|
🎭 Playwright Run Summary
2 flaky
[Chrome] › playwright/e2e/left-panel/room-list-panel/room-list.spec.ts:44:13 › Room list › Room list › should render the room list @screenshot
[Chrome] › playwright/e2e/left-panel/room-list-panel/room-list.spec.ts:142:13 › Room list › Room list › should scroll to the current room
71 passed (8.1m)
|
Artifacts
Produced during runtime
| Name | Size | Digest | |
|---|---|---|---|
|
all-blob-reports-Chrome-1
Expired
|
29.3 MB |
sha256:1ce9684792e66065e65cc16d361baca78a1bf4455dfeb07509701de6d12e2583
|
|
|
all-blob-reports-Chrome-2
Expired
|
14 MB |
sha256:15aeb0cd09df74e5aa98fcbd818392a2aa6505793d8473a7fafe7f410d22cc81
|
|
|
all-blob-reports-Chrome-3
Expired
|
247 KB |
sha256:ce505894974bf4f6092baac692c9ec355a9bfbb6bdb46bbc5186ae446d1f292f
|
|
|
all-blob-reports-Chrome-4
Expired
|
3.05 MB |
sha256:ec1de7cd46d04f6536cf09fadc889d86c8abf03b3d9d248f4aac10350745b80b
|
|
|
all-blob-reports-Chrome-5
Expired
|
7.82 MB |
sha256:3f404c51f5ea12db3680b72f655de28970a5948c4768bd3e2e1d6b64a27ec82c
|
|
|
all-blob-reports-Chrome-6
Expired
|
4.61 MB |
sha256:0fae9ea51cd2f6588515e55d5dc6708612ccc01e08b4949427b327d9fe39c27a
|
|
|
html-report
Expired
|
56.8 MB |
sha256:d2a4aa3bce68f2566452fdb1bee2319d5a79d6b7ded8dbef5a79991b9db98bb0
|
|
|
webapp
Expired
|
38.4 MB |
sha256:bd3be0b98526719ddf7cb8ba967be74bfe21e9185ffe51950579f0aaac597978
|
|