Skip to content

Add daily automatic tests for in-app tutorials (#114) #21

Add daily automatic tests for in-app tutorials (#114)

Add daily automatic tests for in-app tutorials (#114) #21

Triggered via push July 24, 2026 06:35
Status Failure
Total duration 38m 24s
Artifacts 5
Matrix: test-in-app-tutorials
Fit to window
Zoom out
Zoom in

Annotations

6 errors, 3 warnings, and 3 notices
test-in-app-tutorials (desktop)
Process completed with exit code 1.
[desktop] › e2e/in-app-tutorials.spec.js:42:3 › in-app tutorial: tilemapPlatformer: e2e/lib/tutorialPlayer.js#L715
1) [desktop] › e2e/in-app-tutorials.spec.js:42:3 › in-app tutorial: tilemapPlatformer ──────────── Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── TutorialStepError: Tutorial "tilemapPlatformer" is broken at step 13 (highlighted element: #instruction-or-object-selector div[data-object-name="Tilemap"], trigger: {"presenceOfElement":"#instruction-item-TileMap--SimpleTileMap--TileIdAtPosition"}). The action was performed but the tutorial did not advance. Page state: {"hasErrorBoundary":false,"openDialogsCount":1,"highlightedElementExists":true,"tooltipText":"52%Quit tutorialSelect the Tilemap object.","avatarDisplayed":true}. at lib/tutorialPlayer.js:715 713 | }, state.elementToHighlightId || null) 714 | .catch(() => null); > 715 | throw new TutorialStepError( | ^ 716 | `Tutorial "${tutorial.id}" is broken at step ${state.stepIndex} ` + 717 | `(highlighted element: ${state.elementToHighlightId || 'none'}, ` + 718 | `trigger: ${JSON.stringify(step.nextStepTrigger || {})})` + at playTutorial (/home/runner/work/GDevelop-tutorials/GDevelop-tutorials/e2e/lib/tutorialPlayer.js:715:13) at /home/runner/work/GDevelop-tutorials/GDevelop-tutorials/e2e/in-app-tutorials.spec.js:57:5
test-in-app-tutorials (tablet)
Process completed with exit code 1.
[tablet] › e2e/in-app-tutorials.spec.js:42:3 › in-app tutorial: tilemapPlatformer: e2e/lib/gdevelopEditor.js#L121
2) [tablet] › e2e/in-app-tutorials.spec.js:42:3 › in-app tutorial: tilemapPlatformer ───────────── Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Error: page.evaluate: Target page, context or browser has been closed at lib/gdevelopEditor.js:121 119 | /** @PARAM {import('@playwright/test').Page} page */ 120 | const getTutorialState = async (page) => { > 121 | return await page.evaluate(() => window['inAppTutorialTestModeState']); | ^ 122 | }; 123 | 124 | module.exports = { at getTutorialState (/home/runner/work/GDevelop-tutorials/GDevelop-tutorials/e2e/lib/gdevelopEditor.js:121:21) at playTutorial (/home/runner/work/GDevelop-tutorials/GDevelop-tutorials/e2e/lib/tutorialPlayer.js:556:25) at /home/runner/work/GDevelop-tutorials/GDevelop-tutorials/e2e/in-app-tutorials.spec.js:57:5
[tablet] › e2e/in-app-tutorials.spec.js:42:3 › in-app tutorial: tilemapPlatformer: e2e/in-app-tutorials.spec.js#L0
2) [tablet] › e2e/in-app-tutorials.spec.js:42:3 › in-app tutorial: tilemapPlatformer ───────────── Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Test timeout of 600000ms exceeded.
[tablet] › e2e/in-app-tutorials.spec.js:42:3 › in-app tutorial: tilemapPlatformer: e2e/lib/gdevelopEditor.js#L121
2) [tablet] › e2e/in-app-tutorials.spec.js:42:3 › in-app tutorial: tilemapPlatformer ───────────── Error: page.evaluate: Target page, context or browser has been closed at lib/gdevelopEditor.js:121 119 | /** @PARAM {import('@playwright/test').Page} page */ 120 | const getTutorialState = async (page) => { > 121 | return await page.evaluate(() => window['inAppTutorialTestModeState']); | ^ 122 | }; 123 | 124 | module.exports = { at getTutorialState (/home/runner/work/GDevelop-tutorials/GDevelop-tutorials/e2e/lib/gdevelopEditor.js:121:21) at playTutorial (/home/runner/work/GDevelop-tutorials/GDevelop-tutorials/e2e/lib/tutorialPlayer.js:556:25) at /home/runner/work/GDevelop-tutorials/GDevelop-tutorials/e2e/in-app-tutorials.spec.js:57:5
test-in-app-tutorials (mobile)
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/checkout@v4, actions/setup-node@v4, actions/upload-artifact@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
test-in-app-tutorials (desktop)
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/checkout@v4, actions/setup-node@v4, actions/upload-artifact@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
test-in-app-tutorials (tablet)
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/checkout@v4, actions/setup-node@v4, actions/upload-artifact@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
🎭 Playwright Run Summary
1 skipped 11 passed (13.4m)
🎭 Playwright Run Summary
1 failed [desktop] › e2e/in-app-tutorials.spec.js:42:3 › in-app tutorial: tilemapPlatformer ───────────── 1 skipped 10 passed (16.9m)
🎭 Playwright Run Summary
1 failed [tablet] › e2e/in-app-tutorials.spec.js:42:3 › in-app tutorial: tilemapPlatformer ────────────── 1 flaky [tablet] › e2e/in-app-tutorials.spec.js:42:3 › in-app tutorial: knightPlatformer ─────────────── 1 skipped 9 passed (32.6m)

Artifacts

Produced during runtime
Name Size Digest
test-traces-desktop Expired
89.8 MB
sha256:c3f8e08714759a53e4f28e17ac8820ea5a80df9c7251a9986b54b7cd9a277c45
test-traces-tablet Expired
404 MB
sha256:34b226146a77c10d9bc2e77ff62228c0ec069d3abc3d5d04b8f8f27b2561df7b
tutorial-videos-desktop Expired
8.62 MB
sha256:339511650fe0bbd7e9949e1a32dc65e7c7efc69431e2fd613a0f247261f39ad6
tutorial-videos-mobile Expired
7.11 MB
sha256:9035d441491da0f8d7b1f270c9f778c550fa3d5fa7040b0437721e0a5abf1447
tutorial-videos-tablet Expired
15.1 MB
sha256:0ddc13db207f7e47f90ffb584f763bf38983aa9fab03194d94e7488dcc6789e5