Build, lint & test #2926
build-lint-test.yml
on: merge_group
Matrix: playwright-e2e
Deploy to abacus-test.nl
13s
Annotations
6 errors and 6 notices
[firefox] › e2e-tests\data-entry.e2e.ts:115:3 › full data entry flow › recount:
frontend\e2e-tests\data-entry.e2e.ts#L119
1) [firefox] › e2e-tests\data-entry.e2e.ts:115:3 › full data entry flow › recount, no differences
Error: Timed out 5000ms waiting for expect(locator).toBeVisible()
Locator: getByRole('group', { name: 'Welk stembureau ga je invoeren?' })
Expected: visible
Received: <element(s) not found>
Call log:
- expect.toBeVisible with timeout 5000ms
- waiting for getByRole('group', { name: 'Welk stembureau ga je invoeren?' })
117 |
118 | const pollingStationChoicePage = new PollingStationChoicePage(page);
> 119 | await expect(pollingStationChoicePage.fieldset).toBeVisible();
| ^
120 | await pollingStationChoicePage.selectPollingStationAndClickStart(pollingStation.number);
121 |
122 | const recountedPage = new RecountedPage(page);
at D:\a\abacus\abacus\frontend\e2e-tests\data-entry.e2e.ts:119:53
|
[firefox] › e2e-tests\data-entry.model.e2e.ts:185:7 › Data entry model test › Reaches state "votersVotesPageAfterResumeChanged": xstate.init → FILL_WITH_VALID_DATA → SUBMIT → GO_TO_VOTERS_VOTES_PAGE → CHANGE_VALID_DATA → NAV_TO_POLLING_STATION_PAGE → SAVE_INPUT → RESUME_DATA_ENTRY:
frontend\e2e-tests\data-entry.model.e2e.ts#L1
2) [firefox] › e2e-tests\data-entry.model.e2e.ts:185:7 › Data entry model test › Reaches state "votersVotesPageAfterResumeChanged": xstate.init → FILL_WITH_VALID_DATA → SUBMIT → GO_TO_VOTERS_VOTES_PAGE → CHANGE_VALID_DATA → NAV_TO_POLLING_STATION_PAGE → SAVE_INPUT → RESUME_DATA_ENTRY
Test timeout of 30000ms exceeded.
|
[firefox] › e2e-tests\data-entry.model.e2e.ts:185:7 › Data entry model test › Reaches state "votersVotesPageAfterResumeChanged": xstate.init → FILL_WITH_VALID_DATA → SUBMIT → GO_TO_VOTERS_VOTES_PAGE → CHANGE_VALID_DATA → NAV_TO_POLLING_STATION_PAGE → SAVE_INPUT → RESUME_DATA_ENTRY:
frontend\e2e-tests\page-objects\data_entry\DataEntryBasePgObj.ts#L29
2) [firefox] › e2e-tests\data-entry.model.e2e.ts:185:7 › Data entry model test › Reaches state "votersVotesPageAfterResumeChanged": xstate.init → FILL_WITH_VALID_DATA → SUBMIT → GO_TO_VOTERS_VOTES_PAGE → CHANGE_VALID_DATA → NAV_TO_POLLING_STATION_PAGE → SAVE_INPUT → RESUME_DATA_ENTRY
Error: locator.click: Test timeout of 30000ms exceeded.
Call log:
- waiting for getByRole('navigation').getByRole('link', { name: 'Test Location — Test Election' })
Path:
State: {"value":"voterVotesPageEmpty"}
Event: {"type":"xstate.init"}
State: {"value":"votersVotesPageFilled"} via {"type":"xstate.init"}
Event: {"type":"FILL_WITH_VALID_DATA"}
State: {"value":"differencesPage"} via {"type":"FILL_WITH_VALID_DATA"}
Event: {"type":"SUBMIT"}
State: {"value":"votersVotesPageSubmitted"} via {"type":"SUBMIT"}
Event: {"type":"GO_TO_VOTERS_VOTES_PAGE"}
State: {"value":"votersVotesPageChangedFilled"} via {"type":"GO_TO_VOTERS_VOTES_PAGE"}
Event: {"type":"CHANGE_VALID_DATA"}
State: {"value":"abortInputModalChanged"} via {"type":"CHANGE_VALID_DATA"}
Event: {"type":"NAV_TO_POLLING_STATION_PAGE"}
State: {"value":"votersVotesPageAfterResumeChanged"} via {"type":"RESUME_DATA_ENTRY"}
at page-objects\data_entry\DataEntryBasePgObj.ts:29
27 | async clickElectionInNavBar(electionLocation: string, electionName: string) {
28 | const linkText = `${electionLocation} — ${electionName}`;
> 29 | await this.page.getByRole("navigation").getByRole("link", { name: linkText }).click();
| ^
30 | }
31 | }
32 |
at VotersAndVotesPage.clickElectionInNavBar (D:\a\abacus\abacus\frontend\e2e-tests\page-objects\data_entry\DataEntryBasePgObj.ts:29:83)
at NAV_TO_POLLING_STATION_PAGE (D:\a\abacus\abacus\frontend\e2e-tests\data-entry.model.e2e.ts:314:38)
at TestModel.testTransition (D:\a\abacus\abacus\frontend\node_modules\@xstate\graph\dist\xstate-graph.cjs.js:304:22)
at TestModel.testPath (D:\a\abacus\abacus\frontend\node_modules\@xstate\graph\dist\xstate-graph.cjs.js:260:22)
at D:\a\abacus\abacus\frontend\e2e-tests\data-entry.model.e2e.ts:389:9
|
[firefox] › e2e-tests\data-entry.model.e2e.ts:185:7 › Data entry model test › Reaches state "votersVotesPageChangedSubmitted": xstate.init → FILL_WITH_VALID_DATA → SUBMIT → GO_TO_VOTERS_VOTES_PAGE → CHANGE_VALID_DATA → GO_TO_RECOUNTED_PAGE → SAVE_UNSUBMITTED_CHANGES → GO_TO_VOTERS_VOTES_PAGE:
frontend\e2e-tests\page-objects\data_entry\PollingStationChoicePgObj.ts#L47
3) [firefox] › e2e-tests\data-entry.model.e2e.ts:185:7 › Data entry model test › Reaches state "votersVotesPageChangedSubmitted": xstate.init → FILL_WITH_VALID_DATA → SUBMIT → GO_TO_VOTERS_VOTES_PAGE → CHANGE_VALID_DATA → GO_TO_RECOUNTED_PAGE → SAVE_UNSUBMITTED_CHANGES → GO_TO_VOTERS_VOTES_PAGE
TimeoutError: locator.click: Timeout 2000ms exceeded.
Call log:
- waiting for getByRole('button', { name: 'Beginnen' })
- locator resolved to <button type="button" class="_button_18xf7_1 _lg_18xf7_144">Beginnen</button>
- attempting click action
- waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
at page-objects\data_entry\PollingStationChoicePgObj.ts:47
45 | // click() fails on Safari because element is visible and enabled, but not stable
46 | // so added timeout to make it fail fast
> 47 | await button.click({ timeout: 2000 });
| ^
48 | }
49 |
50 | async selectPollingStationAndClickStart(pollingStationNumber: number) {
at PollingStationChoicePage.clickStart (D:\a\abacus\abacus\frontend\e2e-tests\page-objects\data_entry\PollingStationChoicePgObj.ts:47:18)
at PollingStationChoicePage.selectPollingStationAndClickStart (D:\a\abacus\abacus\frontend\e2e-tests\page-objects\data_entry\PollingStationChoicePgObj.ts:52:16)
at D:\a\abacus\abacus\frontend\e2e-tests\data-entry.model.e2e.ts:378:9
|
[firefox] › e2e-tests\data-entry.model.e2e.ts:185:7 › Data entry model test › Reaches state "votersVotesPageSubmitted": xstate.init → FILL_WITH_VALID_DATA → SUBMIT → GO_TO_VOTERS_VOTES_PAGE → CHANGE_VALID_DATA → GO_TO_RECOUNTED_PAGE → DISCARD_UNSUBMITTED_CHANGES → GO_TO_VOTERS_VOTES_PAGE:
frontend\e2e-tests\data-entry.model.e2e.ts#L1
4) [firefox] › e2e-tests\data-entry.model.e2e.ts:185:7 › Data entry model test › Reaches state "votersVotesPageSubmitted": xstate.init → FILL_WITH_VALID_DATA → SUBMIT → GO_TO_VOTERS_VOTES_PAGE → CHANGE_VALID_DATA → GO_TO_RECOUNTED_PAGE → DISCARD_UNSUBMITTED_CHANGES → GO_TO_VOTERS_VOTES_PAGE
Test timeout of 30000ms exceeded.
|
[firefox] › e2e-tests\data-entry.model.e2e.ts:185:7 › Data entry model test › Reaches state "votersVotesPageSubmitted": xstate.init → FILL_WITH_VALID_DATA → SUBMIT → GO_TO_VOTERS_VOTES_PAGE → CHANGE_VALID_DATA → GO_TO_RECOUNTED_PAGE → DISCARD_UNSUBMITTED_CHANGES → GO_TO_VOTERS_VOTES_PAGE:
frontend\e2e-tests\page-objects\data_entry\VotersAndVotesPgObj.ts#L62
4) [firefox] › e2e-tests\data-entry.model.e2e.ts:185:7 › Data entry model test › Reaches state "votersVotesPageSubmitted": xstate.init → FILL_WITH_VALID_DATA → SUBMIT → GO_TO_VOTERS_VOTES_PAGE → CHANGE_VALID_DATA → GO_TO_RECOUNTED_PAGE → DISCARD_UNSUBMITTED_CHANGES → GO_TO_VOTERS_VOTES_PAGE
Error: locator.fill: Test timeout of 30000ms exceeded.
Call log:
- waiting for getByRole('textbox', { name: 'B Volmachtbewijzen' })
Path:
State: {"value":"voterVotesPageEmpty"}
Event: {"type":"xstate.init"}
State: {"value":"votersVotesPageFilled"} via {"type":"xstate.init"}
Event: {"type":"FILL_WITH_VALID_DATA"}
State: {"value":"votersVotesPageSubmitted"} via {"type":"GO_TO_VOTERS_VOTES_PAGE"}
at page-objects\data_entry\VotersAndVotesPgObj.ts:62
60 | async inputVotersCounts(votersCounts: VotersCounts) {
61 | await this.pollCardCount.fill(votersCounts.poll_card_count.toString());
> 62 | await this.proxyCertificateCount.fill(votersCounts.proxy_certificate_count.toString());
| ^
63 | await this.voterCardCount.fill(votersCounts.voter_card_count.toString());
64 | await this.totalAdmittedVotersCount.fill(votersCounts.total_admitted_voters_count.toString());
65 | }
at VotersAndVotesPage.inputVotersCounts (D:\a\abacus\abacus\frontend\e2e-tests\page-objects\data_entry\VotersAndVotesPgObj.ts:62:38)
at FILL_WITH_VALID_DATA (D:\a\abacus\abacus\frontend\e2e-tests\data-entry.model.e2e.ts:304:13)
at TestModel.testTransition (D:\a\abacus\abacus\frontend\node_modules\@xstate\graph\dist\xstate-graph.cjs.js:304:5)
at TestModel.testPath (D:\a\abacus\abacus\frontend\node_modules\@xstate\graph\dist\xstate-graph.cjs.js:260:11)
at D:\a\abacus\abacus\frontend\e2e-tests\data-entry.model.e2e.ts:389:9
|
🎭 Playwright Run Summary
33 passed (1.3m)
|
🎭 Playwright Run Summary
33 passed (46.1s)
|
🎭 Playwright Run Summary
33 passed (1.2m)
|
🎭 Playwright Run Summary
165 passed (5.0m)
|
🎭 Playwright Run Summary
165 passed (4.6m)
|
🎭 Playwright Run Summary
4 flaky
[firefox] › e2e-tests\data-entry.e2e.ts:115:3 › full data entry flow › recount, no differences ─
[firefox] › e2e-tests\data-entry.model.e2e.ts:185:7 › Data entry model test › Reaches state "votersVotesPageAfterResumeChanged": xstate.init → FILL_WITH_VALID_DATA → SUBMIT → GO_TO_VOTERS_VOTES_PAGE → CHANGE_VALID_DATA → NAV_TO_POLLING_STATION_PAGE → SAVE_INPUT → RESUME_DATA_ENTRY
[firefox] › e2e-tests\data-entry.model.e2e.ts:185:7 › Data entry model test › Reaches state "votersVotesPageChangedSubmitted": xstate.init → FILL_WITH_VALID_DATA → SUBMIT → GO_TO_VOTERS_VOTES_PAGE → CHANGE_VALID_DATA → GO_TO_RECOUNTED_PAGE → SAVE_UNSUBMITTED_CHANGES → GO_TO_VOTERS_VOTES_PAGE
[firefox] › e2e-tests\data-entry.model.e2e.ts:185:7 › Data entry model test › Reaches state "votersVotesPageSubmitted": xstate.init → FILL_WITH_VALID_DATA → SUBMIT → GO_TO_VOTERS_VOTES_PAGE → CHANGE_VALID_DATA → GO_TO_RECOUNTED_PAGE → DISCARD_UNSUBMITTED_CHANGES → GO_TO_VOTERS_VOTES_PAGE
161 passed (7.8m)
|
Artifacts
Produced during runtime
Name | Size | |
---|---|---|
abacus-macos-latest
|
35.8 MB |
|
abacus-ubuntu-latest
|
102 MB |
|
abacus-windows-latest
|
24.1 MB |
|
frontend-build
|
1.03 MB |
|
playwright-report-macos-latest
|
708 KB |
|
playwright-report-ubuntu-latest
|
713 KB |
|
playwright-report-windows-latest
|
3.1 MB |
|