From 83f98b3e9957cc1e22da4460fc8471c8b65a5017 Mon Sep 17 00:00:00 2001 From: Simon Emms Date: Sat, 28 Mar 2026 15:33:58 +0000 Subject: [PATCH] ci: run playwright tests Signed-off-by: Simon Emms --- .devcontainer/devcontainer.json | 5 +++-- .github/workflows/build.yml | 19 +++++++++++++++++++ package.json | 1 + playwright.config.ts | 6 +++--- 4 files changed, 26 insertions(+), 5 deletions(-) diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index 95c0562..47614e0 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -16,7 +16,7 @@ } }, "postCreateCommand": { - "playwright": "npx --yes playwright install --with-deps" + "playwright": "npx --yes playwright install --with-deps chromium" }, "containerEnv": { "PLAYWRIGHT_HTML_HOST": "0.0.0.0", @@ -24,6 +24,7 @@ "HOST": "0.0.0.0" }, "forwardPorts": [ - 5173 + 5173, + 9323 ] } diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 4d23546..8b70029 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -65,6 +65,24 @@ jobs: - name: Checking run: npm run check + e2e: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v6 + + - uses: actions/setup-node@v6 + with: + node-version: lts/* + + - name: Install dependencies + run: npm ci + + - name: Install Playwright browsers + run: npx playwright install --with-deps chromium + + - name: End-to-end tests + run: npm run test:e2e + helm: runs-on: ubuntu-latest steps: @@ -151,6 +169,7 @@ jobs: runs-on: ubuntu-latest needs: - commitlint + - e2e - helm - pre-commit - test diff --git a/package.json b/package.json index 695c9cc..9279f69 100644 --- a/package.json +++ b/package.json @@ -16,6 +16,7 @@ "prepare": "svelte-kit sync || echo ''", "start": "node build", "test:e2e": "playwright test", + "test:e2e:report": "playwright show-report --host 0.0.0.0", "test:e2e:ui": "playwright test --ui", "test:e2e:headed": "playwright test --headed", "test:e2e:debug": "playwright test --debug" diff --git a/playwright.config.ts b/playwright.config.ts index 9873c89..c7d7b2b 100644 --- a/playwright.config.ts +++ b/playwright.config.ts @@ -24,7 +24,7 @@ export default defineConfig({ reporter: 'html', use: { - baseURL: 'http://localhost:5173', + baseURL: 'http://127.0.0.1:5173', trace: 'on-first-retry', }, @@ -39,8 +39,8 @@ export default defineConfig({ webServer: { command: 'npm run dev', - url: 'http://localhost:5173', - reuseExistingServer: true, + url: 'http://127.0.0.1:5173', + reuseExistingServer: !process.env.CI, timeout: 120_000, }, });