43 lines
1.2 KiB
TypeScript
43 lines
1.2 KiB
TypeScript
import { defineConfig, devices } from "@playwright/test";
|
|
|
|
/**
|
|
* Playwright configuration for EnCoach frontend smoke tests.
|
|
*
|
|
* By default we run against a Vite preview server on localhost:4173. In CI
|
|
* this is started by the `playwright` step in .github/workflows/ci.yml after
|
|
* `npm run build`.
|
|
*
|
|
* Override the base URL with `PLAYWRIGHT_BASE_URL=https://... npx playwright
|
|
* test` to run against a deployed environment.
|
|
*/
|
|
const baseURL = process.env.PLAYWRIGHT_BASE_URL || "http://localhost:4173";
|
|
|
|
export default defineConfig({
|
|
testDir: "./e2e",
|
|
timeout: 30_000,
|
|
expect: { timeout: 5_000 },
|
|
fullyParallel: true,
|
|
forbidOnly: !!process.env.CI,
|
|
retries: process.env.CI ? 2 : 0,
|
|
reporter: process.env.CI ? [["github"], ["list"]] : [["list"]],
|
|
use: {
|
|
baseURL,
|
|
trace: "on-first-retry",
|
|
screenshot: "only-on-failure",
|
|
},
|
|
webServer: process.env.PLAYWRIGHT_SKIP_WEBSERVER
|
|
? undefined
|
|
: {
|
|
command: "npm run preview -- --host 127.0.0.1 --port 4173",
|
|
url: baseURL,
|
|
reuseExistingServer: !process.env.CI,
|
|
timeout: 60_000,
|
|
},
|
|
projects: [
|
|
{
|
|
name: "chromium",
|
|
use: { ...devices["Desktop Chrome"] },
|
|
},
|
|
],
|
|
});
|