import { defineConfig, devices } from "@playwright/test"; export default defineConfig({ testDir: "./tests/browser", fullyParallel: false, workers: 1, timeout: 120_000, expect: { timeout: 10_000 }, reporter: [["list"]], use: { baseURL: "http://127.0.0.1:4200", trace: "retain-on-failure" }, webServer: { command: "npm run build && node scripts/serve-test.mjs", url: "http://127.0.0.1:4200", reuseExistingServer: !process.env.CI, timeout: 180_000, }, projects: [ { name: "chromium", testIgnore: /responsive\.spec\.ts/, use: { ...devices["Desktop Chrome"] }, }, { name: "firefox", testIgnore: /responsive\.spec\.ts/, use: { ...devices["Desktop Firefox"] }, }, { name: "webkit", testIgnore: /responsive\.spec\.ts/, use: { ...devices["Desktop Safari"] }, }, { name: "mobile-chromium", testMatch: /responsive\.spec\.ts/, use: { ...devices["Pixel 5"] }, }, ], });