Expand capabilities of Accessibility testing CI/CD feature

Everyone can contribute. Help move this issue forward while earning points, leveling up and collecting rewards.

Proposal

We propose enhancing our current Accessibility testing feature in the CI/CD pipeline by integrating multiple scanning runners, specifically adding Axe to our existing Pa11y implementation. This improvement will provide more comprehensive accessibility testing and reporting capabilities.

Current Situation

Existing Accessibility testing feature is currently underutilized. Pa11y is our primary scanning runner with limited coverage.

Problem to solve

This proposal represents a strategic approach to improving our accessibility testing capabilities. By leveraging the full potential of the open-source tool and creating a more integrated, flexible testing environment, we can deliver significant value to both our development team and our end-users.

We are looking for a sustainable way to monitor the accessibility compliance of our product, so do our clients. By extending an already implemented feature, we can provide a tool that is highly accurate, flexible and trust worthy.

The proposed enhancements align with best practices in web accessibility and demonstrate our commitment to creating inclusive digital experiences.

Proposed Enhancement

  • Integrate multiple scanning runners (Pa11y and Axe)
  • Enhance result visualization and reporting
  • Provide flexible testing and reporting mechanisms

Key Components of Implementation

CI/CD Pipeline Integration

Effort: S

  • Modify the existing accessibility testing setup in the GitLab CI/CD configuration
  • Include both Pa11y and Axe runners to provide more comprehensive scanning
  • Leverage the library's configuration options to create a more robust testing approach

Result Reporting and Visualization

MR Widget Improvements

Effort: M

  • Enhance the merge request widget to display more detailed and actionable accessibility scan results
  • Provide clear, hierarchical information about detected issues
Independent Reporting System

Effort: L

Develop a standalone reporting mechanism similar to the security vulnerabilities reports, with the following features:

  • Scheduled scanning (e.g., nightly builds)
  • Centralized results view with:
    • Comprehensive list of scan results
    • Severity categorization
    • Corresponding WCAG guideline references
Detailed Result Page

Effort: L

Create a dedicated page for each scan result featuring:

  • Detailed issue description
  • Code snippet of the problematic element
  • Direct links to relevant accessibility guidelines
  • Controls to manage results:
    • Mark as resolved
    • Flag as false negative
    • Convert to a tracked issue

Links and references

Edited by 🤖 GitLab Bot 🤖