import { defineConfig, devices } from '@playwright/test'; export default defineConfig({ testDir: './specs', fullyParallel: true, forbidOnly: !!process.env.CI, retries: process.env.CI ? 2 : 0, workers: process.env.CI ? 1 : undefined, reporter: [ ['html', { outputFolder: 'playwright-report' }], ['list'], ], use: { baseURL: process.env.TEST_URL || 'http://localhost:8000', trace: 'on-first-retry', screenshot: 'only-on-failure', video: 'retain-on-failure', }, projects: [ { name: 'chromium', use: { ...devices['Desktop Chrome'] }, }, { name: 'mobile', use: { ...devices['iPhone 13'] }, }, { name: 'tablet', use: { ...devices['iPad Pro 11'] }, }, ], // Note: The server must be running before tests // Start it with: cd ../.. && python server/main.py // webServer config removed because it requires PostgreSQL which may not be available });