Skip to content

Add accessibility CI job (Playwright + axe-core WCAG 2.1 AA scans) #168

Open

Description

@amar-python

Context

Accessibility testing CI job, follow-up from closed PR #41.

PR #41 proposed adding a Playwright + axe-core WCAG scan as a new Quality Gate job. The underlying work is sound: the current CI has no accessibility coverage, and the frontend (csv-table-hub-main) has had accessibility issues shipping unnoticed.

Scope

  • New Quality Gate job accessibility running Playwright + axe-core against the Vite dev server
  • Backend accessibility test files under tests/accessibility/ (conftest.py for Playwright fixtures, test_accessibility.py with WCAG 2.1 AA scans across the main pages)
  • Install step for Playwright browsers in CI (playwright install chromium)
  • Marker and job-exclusion wiring: accessibility tests run only in the dedicated job, integration (postgres service) excludes them with --markers "not accessibility"

Out of scope

Done when

  • The job appears in .github/workflows/quality-gate.yml as a pull_request job
  • It runs green on a trivial PR touching only backend
  • tests/accessibility/test_accessibility.py runs locally with python -m pytest tests/accessibility -v and reports pass/fail counts
  • Known limitation documented: the backend scans will fail against unfixed frontend a11y issues; failures are expected until the frontend fixes land

Related

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions