Introduction to Web Accessibility


Some background: GNOME's Outreachy internship program is targeted at underrepresented groups in tech.

A variety of open-source companies are involved.

An employee of those companies can volunteer to be a mentor, and they design an internship with a particular topic and goal.

Those who are both interested and eligible submit applications for that internship.

The goal of the internship I was selected for is to automate regression testing for web accessibility.

My mentor, Matt Brandt, is a Senior Test Engineer on the Firefox Test Engineering team.

At a StarCanada conference, Brandt attended a presentation on Web Accessibility.

The talk inspired him to design this internship, and contribute to making the web more accessible.

What is Web Accessibility?

Web Accessibility refers to how easily an atypical user can access and use websites and web applications.

This includes people who have difficulty using a mouse or touchpad, those who have impaired sight or lack it altogether, and those who can use neither a mouse nor a keyboard.

Many people in these groups rely on screen readers or other assistive technologies.

Audio may be their only option to learn what a website is about, what it contains, and how to make use of it.

As it turns out, many resources on the web are incompatible with screen readers, and may be difficult or impossible to for some people to use.

Click here for more information on designing for screen reader use.

Web accessibility is a very broad topic, as you can infer from taking a look at the last Web Content Accessibility Guidelines, or WCAG 2.0.

However, there are a few simple changes that can be made in how sites are developed that will significantly improve the experience for users with disabilities.


As I am writing this, I am well aware that my own websites fall short of this standard, which outlines the biggest issue with web accessibility:

Most developers simply don't know what accessibility is, how to design for it, or why it is important.


At this point, testing sites for accessibility is still largely a manual process.

While not all aspects of accessibility testing can be automated, the goal of this internship is to simplify and automate as much as I can.

Over the next three months, my hope is that I can make a significant impact on both web accessibility and automated testing.