From 077d4ed718f5695735e726de4b6153b1cd34fa3f Mon Sep 17 00:00:00 2001 From: Shane Jaroch Date: Sat, 10 Jan 2026 16:42:03 -0500 Subject: [PATCH] feat: add playwright e2e tests --- package.json | 4 +++- playwright.config.js | 10 ++++++++++ tests/test.js | 6 ++++++ 3 files changed, 19 insertions(+), 1 deletion(-) create mode 100644 playwright.config.js create mode 100644 tests/test.js diff --git a/package.json b/package.json index 20f858f..37d45ad 100644 --- a/package.json +++ b/package.json @@ -13,9 +13,11 @@ "build": "vite build", "preview": "vite preview", "check": "svelte-kit sync && svelte-check --tsconfig ./jsconfig.json", - "check:watch": "svelte-kit sync && svelte-check --tsconfig ./jsconfig.json --watch" + "check:watch": "svelte-kit sync && svelte-check --tsconfig ./jsconfig.json --watch", + "test": "playwright test" }, "devDependencies": { + "@playwright/test": "^1.28.1", "@sveltejs/adapter-auto": "^3.0.0", "@sveltejs/kit": "npm:@tg-svelte/kit@^2.49.4", "@sveltejs/vite-plugin-svelte": "^3.0.0", diff --git a/playwright.config.js b/playwright.config.js new file mode 100644 index 0000000..12665c2 --- /dev/null +++ b/playwright.config.js @@ -0,0 +1,10 @@ +import { defineConfig } from '@playwright/test'; + +export default defineConfig({ + webServer: { + command: 'npm run build && npm run preview', + port: 4173 + }, + testDir: 'tests', + testMatch: /(.+\.)?(test|spec)\.[jt]s/ +}); diff --git a/tests/test.js b/tests/test.js new file mode 100644 index 0000000..9985ce1 --- /dev/null +++ b/tests/test.js @@ -0,0 +1,6 @@ +import { expect, test } from '@playwright/test'; + +test('home page has expected h1', async ({ page }) => { + await page.goto('/'); + await expect(page.locator('h1')).toBeVisible(); +}); -- 2.52.0