Files
portifolio-evandrodevbr/playwright.config.ts
T
Evandro Fonseca Junior 7b633f0f4a chore: dependências e teste de ponta a ponta
Saem gsap, motion, clsx e tailwind-merge; entram server-only, @playwright/test e @axe-core/playwright. Suíte e2e (rotas, axe, teclado, navegação, sem JS, rolagem) rodável com pnpm test:e2e contra BASE_URL.
2026-10-14 14:15:50 -03:00

39 lines
1.3 KiB
TypeScript

import { defineConfig, devices } from "@playwright/test";
/**
* Teste de fumaça de ponta a ponta (pasta e2e/), rodado contra um servidor que já está no ar:
* BASE_URL endereço do site (padrão http://localhost:3001)
* PW_CHROMIUM caminho do chrome.exe, para não baixar navegador do Playwright
* (ex.: %LOCALAPPDATA%\ms-playwright\chromium-1248\chrome-win64\chrome.exe)
* Este arquivo não sobe servidor nenhum: `pnpm build && pnpm start -p 3001` (ou `pnpm dev`) antes de rodar.
*/
const baseURL = process.env.BASE_URL ?? "http://localhost:3001";
const executablePath = process.env.PW_CHROMIUM || undefined;
export default defineConfig({
testDir: "./e2e",
// um servidor de desenvolvimento compila cada rota na primeira visita: com folga
timeout: 120_000,
expect: { timeout: 10_000 },
// um navegador por vez: o servidor local (principalmente o dev) não aguenta várias compilações juntas
workers: 1,
fullyParallel: false,
retries: 0,
reporter: [["list"]],
use: {
baseURL,
trace: "retain-on-failure",
screenshot: "only-on-failure",
launchOptions: { executablePath },
},
projects: [
{
name: "chromium",
use: {
...devices["Desktop Chrome"],
launchOptions: { executablePath },
},
},
],
});