When UX doesn't consider all users it should be called some users experience
JavaScript Python
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


Updates Python 3

Automate Web Accessibility Testing

The goal of SUX (Some User Experience) is to automate testing of accessibility issues and have a suite of regression tests that run as a component in a Jenkins build pipeline.


What is Web Accessibility?

Web Accessibility means, quite plainly, that everyone who is able to access the web can also navigate and utilize the available resources.

This includes those with limited vision or hearing, as well as those with physical or neurological conditions that may affect their ability to operate a computer or its peripherals.

Why Web Accessibility is Important

The internet today offers the possibility of unprecedented access to information and interaction for those with disabilities,[1] giving them a freedom and independence that may never have been possible before. The UN Convention on the Rights of Persons with Disabilities recognizes access to information and communications technologies, including the web, as a basic human right[2].

Approximately 20% of the population in the United States have a disability or limitation[3].

This means that up to 60 million people may have trouble accessing and navigating the web. It is essential that the web be accessible, in order to provide equal access and equal opportunity to all users.

Accessibility supports social inclusion for people of diverse abilities and those with diverse socioeconomic backgrounds.

What Web Accessibility Looks Like

There is extensive documentation on the Web Content Accessibility Guidelines (WCAG) here at How to Meet WCAG 2.0.

A Few Available Resources

Project Scope

Create a suite of regression tests that check for a curated list of accessibility guidelines:

  • Create a Python wrapper for axe-core
  • Write several highlevel smoketests for mozillians.org
  • Run tests as part of a Jenkins job
  • Stretch goal: move the previous completed work into a pytest module
  • Stretch goal: create an ARIA highlighter script and automate checking of images for visual regressions or changes.


This software is licensed under the MPL 2.0:

This Source Code Form is subject to the terms of the Mozilla Public
License, v. 2.0. If a copy of the MPL was not distributed with this
file, You can obtain one at http://mozilla.org/MPL/2.0/.