Skip to content

Add board ID checks to avoid flaky behavior #243

Add board ID checks to avoid flaky behavior

Add board ID checks to avoid flaky behavior #243

Triggered via push March 11, 2024 19:14
Status Failure
Total duration 4m 29s
Artifacts 1

build.yml

on: push
Matrix: test
Matrix: lint
docker-image
0s
docker-image
Fit to window
Zoom out
Zoom in

Annotations

6 errors, 4 warnings, and 1 notice
[firefox] › src/tests/collaboration.spec.ts:117:9 › Two simultaneous users › Switching between boards: playwright/src/pages/BoardPage.ts#L134
1) [firefox] › src/tests/collaboration.spec.ts:117:9 › Two simultaneous users › Switching between boards › Create new board Error: Timed out 5000ms waiting for expect(locator).toHaveText(expected) Locator: locator('#board-name').locator('[contentEditable]') Expected string: "Another board" Received string: "" Call log: - expect.toHaveText with timeout 5000ms - waiting for locator('#board-name').locator('[contentEditable]') - locator resolved to <span contenteditable="false"></span> - unexpected value "" - locator resolved to <span contenteditable="false"></span> - unexpected value "" - locator resolved to <span contenteditable="false"></span> - unexpected value "" - locator resolved to <span contenteditable="false"></span> - unexpected value "" - locator resolved to <span contenteditable="false"></span> - unexpected value "" - locator resolved to <span contenteditable="false"></span> - unexpected value "" - locator resolved to <span contenteditable="false"></span> - unexpected value "" at src/pages/BoardPage.ts:134 132 | }, 133 | async assertBoardName(name: string) { > 134 | await expect(boardName).toHaveText(name) | ^ 135 | }, 136 | async getBoardName() { 137 | return assertNotNull(await boardName.textContent()) at Object.assertBoardName (/home/runner/work/ourboard/ourboard/playwright/src/pages/BoardPage.ts:134:37) at /home/runner/work/ourboard/ourboard/playwright/src/pages/DashboardPage.ts:24:29 at Object.createNewBoard (/home/runner/work/ourboard/ourboard/playwright/src/pages/DashboardPage.ts:13:20) at /home/runner/work/ourboard/ourboard/playwright/src/tests/collaboration.spec.ts:123:9
[firefox] › src/tests/collaboration.spec.ts:117:9 › Two simultaneous users › Switching between boards: playwright/src/pages/BoardPage.ts#L134
1) [firefox] › src/tests/collaboration.spec.ts:117:9 › Two simultaneous users › Switching between boards › Create new board Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Error: Timed out 5000ms waiting for expect(locator).toHaveText(expected) Locator: locator('#board-name').locator('[contentEditable]') Expected string: "Another board" Received string: "" Call log: - expect.toHaveText with timeout 5000ms - waiting for locator('#board-name').locator('[contentEditable]') - locator resolved to <span contenteditable="false"></span> - unexpected value "" - locator resolved to <span contenteditable="false"></span> - unexpected value "" - locator resolved to <span contenteditable="false"></span> - unexpected value "" - locator resolved to <span contenteditable="false"></span> - unexpected value "" - locator resolved to <span contenteditable="false"></span> - unexpected value "" - locator resolved to <span contenteditable="false"></span> - unexpected value "" - locator resolved to <span contenteditable="false"></span> - unexpected value "" at src/pages/BoardPage.ts:134 132 | }, 133 | async assertBoardName(name: string) { > 134 | await expect(boardName).toHaveText(name) | ^ 135 | }, 136 | async getBoardName() { 137 | return assertNotNull(await boardName.textContent()) at Object.assertBoardName (/home/runner/work/ourboard/ourboard/playwright/src/pages/BoardPage.ts:134:37) at /home/runner/work/ourboard/ourboard/playwright/src/pages/DashboardPage.ts:24:29 at Object.createNewBoard (/home/runner/work/ourboard/ourboard/playwright/src/pages/DashboardPage.ts:13:20) at /home/runner/work/ourboard/ourboard/playwright/src/tests/collaboration.spec.ts:123:9
[firefox] › src/tests/collaboration.spec.ts:117:9 › Two simultaneous users › Switching between boards: playwright/src/pages/BoardPage.ts#L134
1) [firefox] › src/tests/collaboration.spec.ts:117:9 › Two simultaneous users › Switching between boards › Create new board Retry #2 ─────────────────────────────────────────────────────────────────────────────────────── Error: Timed out 5000ms waiting for expect(locator).toHaveText(expected) Locator: locator('#board-name').locator('[contentEditable]') Expected string: "Another board" Received string: "" Call log: - expect.toHaveText with timeout 5000ms - waiting for locator('#board-name').locator('[contentEditable]') - locator resolved to <span contenteditable="false"></span> - unexpected value "" - locator resolved to <span contenteditable="false"></span> - unexpected value "" - locator resolved to <span contenteditable="false"></span> - unexpected value "" - locator resolved to <span contenteditable="false"></span> - unexpected value "" - locator resolved to <span contenteditable="false"></span> - unexpected value "" - locator resolved to <span contenteditable="false"></span> - unexpected value "" - locator resolved to <span contenteditable="false"></span> - unexpected value "" at src/pages/BoardPage.ts:134 132 | }, 133 | async assertBoardName(name: string) { > 134 | await expect(boardName).toHaveText(name) | ^ 135 | }, 136 | async getBoardName() { 137 | return assertNotNull(await boardName.textContent()) at Object.assertBoardName (/home/runner/work/ourboard/ourboard/playwright/src/pages/BoardPage.ts:134:37) at /home/runner/work/ourboard/ourboard/playwright/src/pages/DashboardPage.ts:24:29 at Object.createNewBoard (/home/runner/work/ourboard/ourboard/playwright/src/pages/DashboardPage.ts:13:20) at /home/runner/work/ourboard/ourboard/playwright/src/tests/collaboration.spec.ts:123:9
[firefox] › src/tests/collaboration.spec.ts:73:9 › Two simultaneous users › Offline changes are synced on re-connection: playwright/src/tests/collaboration.spec.ts#L98
2) [firefox] › src/tests/collaboration.spec.ts:73:9 › Two simultaneous users › Offline changes are synced on re-connection › Reconnect and verify that changes are synced Error: Timed out 5000ms waiting for expect(locator).toBeVisible() Locator: locator('.board > .container').filter({ hasText: 'user 2 offline text' }) Expected: visible Received: hidden Call log: - expect.toBeVisible with timeout 5000ms - waiting for locator('.board > .container').filter({ hasText: 'user 2 offline text' }) 96 | await user2Page.setOfflineMode(false) 97 | await sleep(1000) > 98 | await expect(user1Page.getArea("user 2 offline text")).toBeVisible() | ^ 99 | await expect(user2Page.getArea("user 1 offline text")).toBeVisible() 100 | }) 101 | }) at /home/runner/work/ourboard/ourboard/playwright/src/tests/collaboration.spec.ts:98:68 at /home/runner/work/ourboard/ourboard/playwright/src/tests/collaboration.spec.ts:94:9
[firefox] › src/tests/collaboration.spec.ts:73:9 › Two simultaneous users › Offline changes are synced on re-connection: playwright/src/tests/collaboration.spec.ts#L98
2) [firefox] › src/tests/collaboration.spec.ts:73:9 › Two simultaneous users › Offline changes are synced on re-connection › Reconnect and verify that changes are synced Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Error: Timed out 5000ms waiting for expect(locator).toBeVisible() Locator: locator('.board > .container').filter({ hasText: 'user 2 offline text' }) Expected: visible Received: hidden Call log: - expect.toBeVisible with timeout 5000ms - waiting for locator('.board > .container').filter({ hasText: 'user 2 offline text' }) 96 | await user2Page.setOfflineMode(false) 97 | await sleep(1000) > 98 | await expect(user1Page.getArea("user 2 offline text")).toBeVisible() | ^ 99 | await expect(user2Page.getArea("user 1 offline text")).toBeVisible() 100 | }) 101 | }) at /home/runner/work/ourboard/ourboard/playwright/src/tests/collaboration.spec.ts:98:68 at /home/runner/work/ourboard/ourboard/playwright/src/tests/collaboration.spec.ts:94:9
test (18.x)
Process completed with exit code 1.
🎭 Playwright Run Summary
1 failed [firefox] › src/tests/collaboration.spec.ts:117:9 › Two simultaneous users › Switching between boards 1 flaky [firefox] › src/tests/collaboration.spec.ts:73:9 › Two simultaneous users › Offline changes are synced on re-connection 2 skipped 78 passed (2.6m)
lint (18.x)
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: actions/checkout@v2, actions/setup-node@v1. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
lint (18.x)
The following actions uses node12 which is deprecated and will be forced to run on node16: actions/checkout@v2, actions/setup-node@v1. For more info: https://github.blog/changelog/2023-06-13-github-actions-all-actions-will-run-on-node16-instead-of-node12-by-default/
test (18.x)
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: actions/checkout@v2, actions/setup-node@v1. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
test (18.x)
The following actions uses node12 which is deprecated and will be forced to run on node16: actions/checkout@v2, actions/setup-node@v1. For more info: https://github.blog/changelog/2023-06-13-github-actions-all-actions-will-run-on-node16-instead-of-node12-by-default/

Artifacts

Produced during runtime
Name Size
test-results Expired
3.31 MB