import { defineConfig, devices } from "@playwright/test"; /** * Ende-zu-Ende-Abläufe – immer gegen den **gebauten** Stand (`pnpm build && pnpm start`), weil * `next dev` hier nicht verlässlich hydriert und ein Screenshot dann nichts beweist. */ const APP_URL = process.env["E2E_APP_URL"] ?? "http://127.0.0.1:3310"; export default defineConfig({ testDir: "./tests/e2e", globalSetup: "./tests/e2e/global-setup.ts", fullyParallel: false, workers: 1, forbidOnly: Boolean(process.env["CI"]), reporter: "list", use: { baseURL: APP_URL, trace: "retain-on-failure", locale: "de-DE", timezoneId: "Europe/Berlin", }, projects: [ { name: "desktop", use: { ...devices["Desktop Chrome"], viewport: { width: 1440, height: 900 } } }, // 390 px ist die Abnahmebreite fürs Handy (kein horizontales Scrollen). { name: "handy", use: { ...devices["Pixel 7"], viewport: { width: 390, height: 844 } } }, ], });