Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WIP: Initial attempt to set up an automated accessibility test #565

Draft
wants to merge 5 commits into
base: main
Choose a base branch
from

Conversation

rsmithlal
Copy link
Member

Enable Automated Lighthouse Accessibility Testing

Summary:

This pull request introduces an automated workflow to perform accessibility testing using Lighthouse on every push and pull request to the main branch. The workflow is designed to ensure our platform meets the WCAG AA standards by maintaining an accessibility score of 90% or higher.

Details:

Workflow Trigger:

The workflow runs on every push and pull request targeting the main branch.
Job Configuration:

Environment Setup:

The workflow uses the ubuntu-latest runner.
A Postgres database service is set up using postgis/postgis:latest.
Environment variables are configured for the development environment.
Steps:

Checkout Code: The latest code is checked out from the repository.
Install Ruby and Gems: Ruby and necessary gems are installed.
Clean up PIDs: Any existing Puma server PIDs are removed to prevent conflicts.
Set up Database Schema: The database schema is loaded.
Run Rails Server: The Rails server is started on port 3000.
Set up Node.js: Node.js is set up with version 14.
Install Lighthouse: Lighthouse is installed globally.
Run Lighthouse: Lighthouse runs accessibility checks against the local server and generates a report.
Upload Lighthouse Report: The generated Lighthouse report is uploaded as an artifact.
Parse Lighthouse Report: The accessibility score is extracted from the report. If the score is below 90%, the build fails.
Benefits:

Automated Accessibility Checks: Ensures that our platform consistently meets accessibility standards without manual intervention.
Early Detection: Identifies accessibility issues early in the development process, reducing the cost and effort of fixes.
Continuous Improvement: Encourages continuous improvement in accessibility compliance, benefiting all users, including those with disabilities.
Instructions for Reviewers:

Verify that the workflow runs successfully on this pull request.
Check the generated Lighthouse report for accessibility compliance.
Ensure the workflow does not introduce any conflicts or performance issues.
Next Steps:

Monitor the results of the workflow over subsequent pushes and pull requests.
Address any accessibility issues identified by Lighthouse.
Consider expanding the workflow to include other categories (e.g., performance, best practices) in the future.
Thank you for reviewing this pull request. Your feedback is appreciated!

@rsmithlal rsmithlal added the enhancement New feature or request label Jun 18, 2024
@rsmithlal rsmithlal self-assigned this Jun 18, 2024
Prefix bundle exec to accessibility runner rails commands

Signed-off-by: Robert Smith <[email protected]>
@rsmithlal rsmithlal changed the title Initial attempt to set up an automated accessibility test WIP: Initial attempt to set up an automated accessibility test Jun 18, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant