diff --git a/frontend/playwright.config.ts b/frontend/playwright.config.ts index f36c321..a559086 100644 --- a/frontend/playwright.config.ts +++ b/frontend/playwright.config.ts @@ -6,9 +6,11 @@ export default defineConfig({ fullyParallel: true, forbidOnly: !!process.env.CI, retries: process.env.CI ? 2 : 0, - workers: process.env.CI ? 1 : undefined, // Good for CI to often limit workers + workers: process.env.CI ? 1 : undefined, reporter: 'html', use: { + // This baseURL is for your frontend tests. + // Tests hitting the backend directly will use absolute URLs. baseURL: 'http://localhost:4200', trace: 'on-first-retry', }, @@ -29,30 +31,22 @@ export default defineConfig({ ], webServer: { - // Your command to start the server command: 'cd .. && just start', - // URL to poll to check if the server is ready - url: 'http://localhost:4200', - // In CI, always start a new server. Locally, you might reuse an existing one. + // **IMPORTANT CHANGE HERE:** + // Point to your backend's health check endpoint. + // If your Spring Boot app uses Actuator, it might be /actuator/health + // Verify the correct health endpoint for your backend. + url: 'http://localhost:8080/health', // Or "http://localhost:8080/actuator/health" reuseExistingServer: !process.env.CI, - // **ADJUSTMENT 1: Increase timeout** - // How long to wait for the server to start (in milliseconds). - // Default is 60000 (1 minute). Adjust this based on your server's needs. - // Example: 180 seconds (3 minutes) - timeout: 180 * 1000, - // **ADJUSTMENT 2: Handle server output for debugging in CI** - // 'pipe': Captures stdout and stderr. Playwright can include this in reports - // or when an error occurs during server startup. - // 'inherit': Streams stdout/stderr directly to the terminal. Useful for live debugging. - // 'ignore': Ignores server output. - stdout: 'pipe', // or 'inherit' if you want to see logs live in CI - stderr: 'pipe', // or 'inherit' + // **INCREASE TIMEOUT SIGNIFICANTLY** + // Gradle + Spring Boot can take a while, especially on first run or in CI. + // Adjust as needed, e.g., 3-5 minutes. + timeout: 300 * 1000, // 300 seconds = 5 minutes + stdout: 'pipe', // Good for capturing logs in CI reports + stderr: 'pipe', // Optional: If your server needs specific environment variables // env: { - // NODE_ENV: 'development', // Or whatever your server needs - // PORT: '4200', // Though your command likely handles this + // SPRING_PROFILES_ACTIVE: 'test', // Example for Spring Boot // }, - // Optional: If your server takes time to shut down gracefully - // killTimeout: 30000, // Time to wait for server to gracefully exit (default 5000ms) }, });