front: handle uncaught exceptions for e2e tests #20928
build.yml
on: pull_request
Matrix: Build
Check dockerfiles
10s
Check scripts
6s
Check generated railjson sync
24s
Check railjson generator
28s
Check commits
10s
Check final newline
12s
Check integration tests
1m 20s
Check osrd schema
22s
Check toml
4s
Check infra schema sync
19s
Check reuse compliance
11s
Check front rtk sync
1m 3s
Check core
4m 39s
Check editoast tests
6m 50s
Check editoast lints
7m 23s
Check editoast openapi
41s
Check gateway
3m 29s
Check osrdyne
3m 29s
Check front
3m 5s
Integration tests
15m 51s
End to end tests
6m 34s
Annotations
10 errors, 3 warnings, and 1 notice
[chromium] › 005-operational-studies.spec.ts:72:3 › Verify simulation configuration in operational studies for train schedules and paced trains › Add a paced train:
tests/pages/operational-studies/operational-studies-page.ts#L190
1) [chromium] › 005-operational-studies.spec.ts:72:3 › Verify simulation configuration in operational studies for train schedules and paced trains › Add a paced train
Error: expect(received).toBe(expected) // Object.is equality
Expected: true
Received: false
at pages/operational-studies/operational-studies-page.ts:190
188 | startTimeDate.getMonth() === scenarioCreationDate.getMonth() &&
189 | startTimeDate.getDate() === scenarioCreationDate.getDate();
> 190 | expect(isSameDate).toBe(true);
| ^
191 |
192 | await expect(this.trainInitialSpeedInput).toBeVisible();
193 | await expect(this.trainInitialSpeedInput).toHaveValue('0');
at OperationalStudiesPage.checkInputsAndButtons (/app/front/tests/pages/operational-studies/operational-studies-page.ts:190:24)
at /app/front/tests/005-operational-studies.spec.ts:87:5
|
[chromium] › 005-operational-studies.spec.ts:72:3 › Verify simulation configuration in operational studies for train schedules and paced trains › Add a paced train:
tests/pages/operational-studies/operational-studies-page.ts#L190
1) [chromium] › 005-operational-studies.spec.ts:72:3 › Verify simulation configuration in operational studies for train schedules and paced trains › Add a paced train
Retry #1 ───────────────────────────────────────────────────────────────────────────────────────
Error: expect(received).toBe(expected) // Object.is equality
Expected: true
Received: false
at pages/operational-studies/operational-studies-page.ts:190
188 | startTimeDate.getMonth() === scenarioCreationDate.getMonth() &&
189 | startTimeDate.getDate() === scenarioCreationDate.getDate();
> 190 | expect(isSameDate).toBe(true);
| ^
191 |
192 | await expect(this.trainInitialSpeedInput).toBeVisible();
193 | await expect(this.trainInitialSpeedInput).toHaveValue('0');
at OperationalStudiesPage.checkInputsAndButtons (/app/front/tests/pages/operational-studies/operational-studies-page.ts:190:24)
at /app/front/tests/005-operational-studies.spec.ts:87:5
|
[chromium] › 008-train-schedule.spec.ts:82:3 › Verify train schedule elements and filters › Loading trains and verifying simulation result:
tests/logging-fixture.ts#L21
2) [chromium] › 008-train-schedule.spec.ts:82:3 › Verify train schedule elements and filters › Loading trains and verifying simulation result
Error: Test failed due to uncaught exception: "TypeError: Cannot read properties of undefined (reading 'values')"
at logging-fixture.ts:21
19 | // Handle uncaught exceptions
20 | page.on('pageerror', (exception) => {
> 21 | throw new Error(`Test failed due to uncaught exception: "${exception}"`);
| ^
22 | });
23 |
24 | // Run the actual test
at Page.<anonymous> (/app/front/tests/logging-fixture.ts:21:13)
|
[chromium] › 008-train-schedule.spec.ts:82:3 › Verify train schedule elements and filters › Loading trains and verifying simulation result:
tests/pages/operational-studies/simulation-results-page.ts#L50
2) [chromium] › 008-train-schedule.spec.ts:82:3 › Verify train schedule elements and filters › Loading trains and verifying simulation result
Error: page.waitForLoadState: Test ended.
at pages/operational-studies/simulation-results-page.ts:50
48 | // Verify that simulation results are displayed
49 | async verifySimulationResultsVisibility(): Promise<void> {
> 50 | await this.page.waitForLoadState('networkidle', { timeout: SIMULATION_RESULT_TIMEOUT });
| ^
51 |
52 | const simulationResultsLocators = [
53 | this.manchetteSpaceTimeChart,
at ScenarioTimetableSection.verifySimulationResultsVisibility (/app/front/tests/pages/operational-studies/simulation-results-page.ts:50:21)
at ScenarioTimetableSection.verifyEachTrainSimulation (/app/front/tests/pages/operational-studies/scenario-timetable-section.ts:316:18)
at /app/front/tests/008-train-schedule.spec.ts:92:5
|
[chromium] › 008-train-schedule.spec.ts:82:3 › Verify train schedule elements and filters › Loading trains and verifying simulation result:
tests/logging-fixture.ts#L21
2) [chromium] › 008-train-schedule.spec.ts:82:3 › Verify train schedule elements and filters › Loading trains and verifying simulation result
Retry #1 ───────────────────────────────────────────────────────────────────────────────────────
Error: Test failed due to uncaught exception: "TypeError: Cannot read properties of undefined (reading 'values')"
at logging-fixture.ts:21
19 | // Handle uncaught exceptions
20 | page.on('pageerror', (exception) => {
> 21 | throw new Error(`Test failed due to uncaught exception: "${exception}"`);
| ^
22 | });
23 |
24 | // Run the actual test
at Page.<anonymous> (/app/front/tests/logging-fixture.ts:21:13)
|
[chromium] › 008-train-schedule.spec.ts:82:3 › Verify train schedule elements and filters › Loading trains and verifying simulation result:
tests/pages/operational-studies/scenario-timetable-section.ts#L315
2) [chromium] › 008-train-schedule.spec.ts:82:3 › Verify train schedule elements and filters › Loading trains and verifying simulation result
Retry #1 ───────────────────────────────────────────────────────────────────────────────────────
Error: locator.click: Test ended.
Call log:
- waiting for getByTestId('train-info').nth(12)
- locator resolved to <div class="train-info" data-testid="train-info">…</div>
- attempting click action
- waiting for element to be visible, enabled and stable
at pages/operational-studies/scenario-timetable-section.ts:315
313 | await this.simulationResult.waitFor();
314 | const trainButton = this.timetableTrainButton.nth(currentTrainIndex);
> 315 | await trainButton.click();
| ^
316 | await this.verifySimulationResultsVisibility();
317 | }
318 | }
at ScenarioTimetableSection.verifyEachTrainSimulation (/app/front/tests/pages/operational-studies/scenario-timetable-section.ts:315:25)
at /app/front/tests/008-train-schedule.spec.ts:92:5
|
[chromium] › 014-stdcm-linked-train.spec.ts:103:3 › Verify stdcm simulation page › Verify STDCM posterior linked train:
tests/pages/stdcm/simulation-results-page.ts#L104
3) [chromium] › 014-stdcm-linked-train.spec.ts:103:3 › Verify stdcm simulation page › Verify STDCM posterior linked train
Error: expect(received).toBe(expected) // Object.is equality
Expected: "11:11"
Received: "11:14"
at pages/stdcm/simulation-results-page.ts:104
102 | expect(tableRow.endStop).toBe(jsonRow.endStop);
103 | expect(tableRow.passageStop).toBe(jsonRow.passageStop);
> 104 | expect(tableRow.startStop).toBe(jsonRow.startStop);
| ^
105 | expect(tableRow.weight).toBe(jsonRow.weight);
106 | expect(tableRow.refEngine).toBe(jsonRow.refEngine);
107 | });
at forEach (/app/front/tests/pages/stdcm/simulation-results-page.ts:104:34)
at SimulationResultPage.verifyTableData (/app/front/tests/pages/stdcm/simulation-results-page.ts:92:14)
at /app/front/tests/014-stdcm-linked-train.spec.ts:118:5
|
[chromium] › 014-stdcm-linked-train.spec.ts:103:3 › Verify stdcm simulation page › Verify STDCM posterior linked train:
tests/pages/stdcm/simulation-results-page.ts#L104
3) [chromium] › 014-stdcm-linked-train.spec.ts:103:3 › Verify stdcm simulation page › Verify STDCM posterior linked train
Retry #1 ───────────────────────────────────────────────────────────────────────────────────────
Error: expect(received).toBe(expected) // Object.is equality
Expected: "11:11"
Received: "11:14"
at pages/stdcm/simulation-results-page.ts:104
102 | expect(tableRow.endStop).toBe(jsonRow.endStop);
103 | expect(tableRow.passageStop).toBe(jsonRow.passageStop);
> 104 | expect(tableRow.startStop).toBe(jsonRow.startStop);
| ^
105 | expect(tableRow.weight).toBe(jsonRow.weight);
106 | expect(tableRow.refEngine).toBe(jsonRow.refEngine);
107 | });
at forEach (/app/front/tests/pages/stdcm/simulation-results-page.ts:104:34)
at SimulationResultPage.verifyTableData (/app/front/tests/pages/stdcm/simulation-results-page.ts:92:14)
at /app/front/tests/014-stdcm-linked-train.spec.ts:118:5
|
End to end tests
Process completed with exit code 1.
|
Integration tests
Process completed with exit code 1.
|
Slow Test:
[chromium] › 009-rolling-stock-editor.spec.ts#L1
[chromium] › 009-rolling-stock-editor.spec.ts took 32.8s
|
Slow Test:
[chromium] › 013-stdcm-simulation-sheet.spec.ts#L1
[chromium] › 013-stdcm-simulation-sheet.spec.ts took 30.5s
|
Slow Test:
[chromium] › 010-op-route-tab.spec.ts#L1
[chromium] › 010-op-route-tab.spec.ts took 25.1s
|
🎭 Playwright Run Summary
3 failed
[chromium] › 005-operational-studies.spec.ts:72:3 › Verify simulation configuration in operational studies for train schedules and paced trains › Add a paced train
[chromium] › 008-train-schedule.spec.ts:82:3 › Verify train schedule elements and filters › Loading trains and verifying simulation result
[chromium] › 014-stdcm-linked-train.spec.ts:103:3 › Verify stdcm simulation page › Verify STDCM posterior linked train
41 passed (5.1m)
|
Artifacts
Produced during runtime
Name | Size | |
---|---|---|
e2e-container-logs
|
221 KB |
|
e2e-traces-and-videos
|
21.6 MB |
|
integration-container-logs
|
52.7 KB |
|