Automated accessibility tests typically produce a flat list of violations that mixes new regressions with long-standing technical debt, making it hard to act on. Trivago's engineering team extended their internal test automation framework with a baseline-driven reporting system. On every merge to main, a baseline.json snapshot is generated and stored in GCP. When a pull request is opened, the same tests run against the feature branch and results are compared to the baseline, categorizing issues as new, fixed, or persisting. New issues automatically fail the CI check and are surfaced directly in the pull request with screenshots, severity badges, and fix guidance. The fingerprinting mechanism hashes the rule ID, HTML snippet, CSS selector, and impact level to stably track violations across runs. The system is built as a plugin to the core framework for easy iteration, and falls back to a standalone snapshot report when no baseline is available. The authors note that automated tools catch only 30–50% of accessibility issues and that manual testing remains essential.

8m read timeFrom tech.trivago.com
Post cover image
Table of contents
The problem with isolated reportsOur approach: comparing against a baselineHow it works in practice: Integrating into CI/CD with GitHub ActionsKeeping a realistic perspectiveConclusion

Sort: