import { defineConfig, devices } from '@playwright/test'; // E2E uses different ports to avoid conflicts with dev servers export const E2E_BACKEND_PORT = 3001; export const E2E_FRONTEND_PORT = 5174; export const E2E_BACKEND_URL = `http://localhost:${E2E_BACKEND_PORT}`; export const E2E_FRONTEND_URL = `https://localhost:${E2E_FRONTEND_PORT}`; export default defineConfig({ testDir: './tests', fullyParallel: false, forbidOnly: !!process.env.CI, retries: process.env.CI ? 2 : 0, workers: 1, reporter: 'list', timeout: 30000, use: { baseURL: E2E_FRONTEND_URL, trace: 'on-first-retry', ignoreHTTPSErrors: true, }, projects: [ { name: 'chromium', use: { ...devices['Desktop Chrome'] }, }, ], globalSetup: './global-setup.ts', globalTeardown: './global-teardown.ts', });