Files
sternboard/e2e/playwright.config.ts
T
Millaguie f11ea58c2c
CI/CD Pipeline / test (push) Successful in 26s
CI/CD Pipeline / build-and-push (push) Successful in 44s
Sternboard: free retro board, no signup (initial)
Servidor Fastify + Socket.IO + Drizzle/Postgres; front Vite+React (EN/ES, tema claro/oscuro).
Tableros por columnas con plantillas, notas privadas/públicas, agrupación, votos
configurables (multivoto), timer compartido con alarma, fases, action items,
export Markdown/JSON e import, autodestrucción, gestión de columnas.
Imagen única (front servido por el servidor) y CI que la construye y publica.
2026-06-16 10:27:33 +02:00

44 lines
1.2 KiB
TypeScript

import { defineConfig, devices } from "@playwright/test";
import { fileURLToPath } from "node:url";
const E2E_DB = process.env.E2E_DATABASE_URL ?? "postgres://retro:retro@localhost:5433/retro_e2e";
const serverDir = fileURLToPath(new URL("../server", import.meta.url));
const webDir = fileURLToPath(new URL("../web", import.meta.url));
export default defineConfig({
testDir: "./tests",
timeout: 30_000,
expect: { timeout: 10_000 },
fullyParallel: false,
workers: 1,
globalSetup: "./global-setup.ts",
reporter: [["list"]],
use: {
baseURL: "http://localhost:5173",
locale: "en-US", // i18n -> inglés determinista
trace: "on-first-retry",
},
projects: [{ name: "chromium", use: { ...devices["Desktop Chrome"] } }],
webServer: [
{
command: "npm run serve",
cwd: serverDir,
port: 3001,
reuseExistingServer: !process.env.CI,
timeout: 60_000,
env: {
DATABASE_URL: E2E_DB,
PORT: "3001",
WEB_ORIGIN: "http://localhost:5173",
},
},
{
command: "npm run dev",
cwd: webDir,
port: 5173,
reuseExistingServer: !process.env.CI,
timeout: 60_000,
},
],
});