test(e2e): axe-core's WCAG A + AA rules over every page and the player (chromium only); contrast stays with the visual check

This commit is contained in:
2026-10-17 17:48:53 +02:00
parent 460bdec406
commit a8dddc8c24
5 changed files with 99 additions and 0 deletions
+5
View File
@@ -17,6 +17,9 @@ import { defineConfig, devices } from "@playwright/test";
const BASE_URL = process.env.PW_BASE_URL || "http://127.0.0.1:8080";
const STORAGE_STATE = "e2e/.auth/state.json";
// The axe scan reads the DOM and the accessibility tree, which the engines build alike: one engine
// answers for all, so the other projects leave it out instead of tripling its time.
const CHROMIUM_ONLY = /a11y\.spec\.ts/;
export default defineConfig({
testDir: "./e2e",
@@ -54,11 +57,13 @@ export default defineConfig({
{
name: "webkit",
use: { ...devices["Desktop Safari"], storageState: STORAGE_STATE },
testIgnore: CHROMIUM_ONLY,
dependencies: ["setup"],
},
{
name: "ipad",
use: { ...devices["iPad (gen 7) landscape"], storageState: STORAGE_STATE },
testIgnore: CHROMIUM_ONLY,
dependencies: ["setup"],
},
// The speed baseline (e2e/speed.measure.ts): readings, not tests. Only when PW_SPEED is set —