build(web): add project-local Playwright tooling

- build: pin Playwright Test and MCP with repository-local npm, browser, and artifact paths plus sandboxed headless Chromium configuration.
- test: add a browser smoke test for the login page while keeping Playwright isolated from Vitest.
- docs: document Debian dependency setup, dual Chromium revisions, E2E commands, and project-scoped Codex MCP usage.
This commit is contained in:
2026-07-15 20:17:24 +08:00
parent 04eb8727eb
commit 29b176d2db
10 changed files with 285 additions and 1 deletions
+11
View File
@@ -0,0 +1,11 @@
import { expect, test } from '@playwright/test'
test('renders the login page in a real browser', async ({ page }) => {
const response = await page.goto('/login')
expect(response?.ok()).toBe(true)
await expect(page.getByRole('heading', { name: 'Sign in to MyGO' })).toBeVisible()
await expect(page.getByLabel('Email')).toBeVisible()
await expect(page.getByLabel('Password')).toBeVisible()
await expect(page.getByRole('button', { name: 'Sign in' })).toBeVisible()
})