Automation Testing

What is Accessibility Testing Top Automation Tools (Guide)

By Test Guild
  • Share:
Join the Guild for FREE
AccessibilityTestingTools Man VR Wheelchair Pic

What is Accessibility Testing?

Accessibility is all about making applications accessible for people who have impairments. It covers people with visual, auditory, or other cognitive impairments.

As we are developing our applications, we should keep these folks in mind as we test to ensure that our software is accessible to all our users.

Why is Accessibility Testing Important?

At least one in five people have some type of impairment, so it's very important to have them in mind when developing software. Recent figures from the Census Bureau show that 18.7% of the US population has some sort of disability and that 54% of those adults go online. From a business perspective, it makes sense for us to ensure them the best experience possible when using our apps.

Furthermore, more governments are passing regulations that make certain disability requirements for software mandatory.

Free Course Accessibility Testing Using Cypress

 

Can Testing be Automated with Accessibility Testing Tools?

Although using an exploratory-type testing approach conducted by folks that actually have impairments will give you some of the best coverage, partial and full automation of accessibility testing is also possible.

But before you fire up your favorite accessibility testing tool, I recommend downloading the Checkpoints for Web Content Accessibility Guidelines (WCAG) to help direct your automation efforts. Keep in mind Compliance with Web Content Accessibility Guidelines (WCAG) is important, but it should be used in conjunction with user research and feedback from users with disabilities.

This list includes three types of accessibility testing tooling: manual, automation, and user acceptance testing. 

  • Manual testing involves using browsers, plug-in tools, and assistive technology. 
  • Automation testing focuses on tools like Ax. 
  • User acceptance testing involves testing with people with disabilities to understand real-world performance and find issues beyond accessibility conformance.

Top Accessibility Testing Tool List

Web Accessibility Checker

The Web Accessibility Checker is probably the easiest way to perform accessibility checks on any ASP.NET Web application. It’s fully customizable and supports all major international accessibility standards.

 UI Automation UI

Microsoft UI Automation is an accessibility framework that enables Windows applications to provide and consume programmatic information about user interfaces (UIs).

It provides programmatic access to most UI elements on the desktop. It enables assistive technology products, such as screen readers, to provide information about the UI to end users and to manipulate the UI by means other than standard input.

UI Automation also allows automated test scripts to interact with the UI.

Windows SDK 

Some other helpful test tools in the Windows SDK are the Accessible Event Watcher, Inspect, AccScope, UI Accessibility Checker, and UI Automation Verify.

Automated Accessibility Testing Tools (AATT)automation

The GitHub page for AATT by PayPal describes itself as a browser-based accessibility testing tool, and plugins require manually testing each page, one at a time.

What’s cool is that instead of developing, testing, and using a separate accessibility test suite, you can now integrate accessibility testing into your existing automation test suite using AATT.

AATT integrates with automation frameworks like PhantomJS, SeLion, and NemoJS.

Accessibility Developer Tools

The Accessibility Developer Tools (ADT) is a library of accessibility-related testing and utility code.

Its main component is the accessibility audit: a collection of audit rules checking for common accessibility problems and an API for running these rules on an HTML page.

ADT has an Audit API axs_testing.js that you can use for automation. You can also run it at the command line using PhantomJS.

For testers that want to run Selenium-based accessibility tests, they even have an example of using it with Selenium Webdriver and Scala.

A11y Machine

The A11y Machine (or a11ym for short, spelled “alym”) is an automated testing tool that crawls and tests pages of any Web application to produce detailed reports. It validates pages against the following specifications/laws.

Tanaguru

Tanaguru is an automated accessibility (a11y) testing tool with an emphasis on reliability and automation. Tanaguru has an open-source (AGPL license) option and a paid option with more features.

It is dedicated to accessibility (a11y) audits and focuses on reliability and a high level of automation.

Axe-Selenium-Java

Axe-Selenium-Java is for Java testers that want to expand their test suites with automated accessibility tests. Axe offers the ability to perform web accessibility testing with JUnit and Selenium.

Axe-WebDriverJs

Axe-WebDriverJs provides JavaScript test automation engineers with a chainable Axe API for Selenium's WebDriverJS and automatically injects it into all frames.

Protractor-Accessibility-Plugin 

Protractor has an Accessibility Plugin that will run each set of audits (depending on your configuration) on your existing end-to-end tests to ensure your site is free of obvious errors.

The creator of this plugin, Marcy Sutton, has written a post on how and why she created the Protractor Accessibility Plugin, along with some examples of how to use it for auditing Selenium WebDriver element objects.

Tenon.io

Tenon.io is an API that can add accessibility tests to pretty much any automation framework you might already be using. Tenon was also designed to test against WCAG.

Pa11y

Pa11y.org has a bunch of tools you can use to help automate your accessibility tests. They have a command-line interface, a browser-based dashboard for monitoring the accessibility of a number of your sites simultaneously, a web service, and even a tool that integrates with CI tools.

Apple’s Accessibility APIs apple

If you’re testing IOS apps, there are some accessibility APIs, like VoiceOver, that you can use in your scripts to help test accessibility.

Leveraging these APIs will not only make your testing easier, but it will also have the added benefit of improving your user experience.

Google’s Accessibility Test Framework for Android

Google’s Accessibility Test Framework (GATF) has test logic that can detect a bunch of common accessibility issues. It makes use of existing Android UI constructs and is easily integrated with other tools and frameworks.

For example, you can access the GATF functionality in Espresso by enabling AccessibilityChecks.enable.

Get TestGuild Partnership Plans

Other Accessibility Testing Tools Resources

If you’re into browser extensions to help you with your accessibility testing, here are a few of the more popular web accessibility testing tools you should check out:

Wave Evaluation Tool wave

You can pass the Wave Evaluation Tool to your URL, and it will tell you what accessibility practices you might be missing or are not optimized for, along with a summary of errors and alerts. It provides visual feedback about the accessibility of your Web content by injecting icons and indicators into your page.

Color Contrast Analyzer color

The Color Contrast Analyzer extension allows you to check for text color contrast problems on a Web page according to the WCAG 2 text-color-contrast requirements.

It evaluates the page as it appears in the browser, so it’s able to handle text over gradients and advanced CSS attributes. You can choose to analyze a portion of a Web page, the entire visible contents of a tab, or an entire Web page.

ChromeVoxvoice

The ChromeVox screen reader is an extension to Chrome that brings the speed, versatility, and security of Chrome to visually impaired users.

Accessibility Evaluation Toolbar

The Accessibility Evaluation Toolbar is a Firefox add-on that supports Web developers in testing Web resources for accessibility features.

DOM Inspector

The DOM Inspector is a Firefox add-on that will show you what areas of your application DOM are truly accessible.

It has a handy “accessible tree” mode.

Color Oracle

Color Oracle is a free color blindness simulator for Windows, Mac, and Linux. It takes the guesswork out of designing for color blindness by showing in real time what people with common color vision impairments will see.

What are some key Metrics used in Accessibility Testing?

Key Metrics used in Accessibility Testing are quantitative measures that assess various aspects of website accessibility.

These metrics play a crucial role in evaluating the level of accessibility, tracking progress, identifying areas for improvement, and ensuring compliance with accessibility standards.

Some of the key metrics include:

  • Error Density, which measures the frequency of accessibility errors on a website
  • Compliance with WCAG Levels, which evaluates the website's adherence to the Web Content Accessibility Guidelines
  • Unique Issues, which identifies specific and distinct accessibility issues present on the website
  • User Impact, which assesses how accessibility barriers affect users interacting with the website
  • Keyboard Accessibility Score, which evaluates the ease of navigating the website using only keyboard controls
  • Screen Reader Compatibility, which measures how well the website is compatible with screen readers for visually impaired users.

These metrics collectively provide valuable insights into the accessibility of a website and help in enhancing the overall user experience for all individuals.

Also many experts on my Test Guild Automation podcast have mentioned their view over the years. For example here are a few metrics and guidelines mentioned in some episodes that can help you with accessibility testing:

  1. WCAG 2.1 Compliance: Shweta Sharma mentions that 90% of their clients require their sites to be WCAG 2.1 compliant. The Web Content Accessibility Guidelines (WCAG) are a set of recommendations for making web content more accessible to people with disabilities.
  2. Color Contrast Ratio: Shannon Lee from Kobiton demonstrates how their AI-powered tool, Nova, checks for color contrast ratios to ensure accessibility. WCAG 2.1 Level AA requires a contrast ratio of at least 4.5:1 for normal text and 3:1 for large text.
  3. Touch Target Size: Kobiton's Nova also checks for touch target size, which is important for users with motor impairments. WCAG 2.1 Success Criterion 2.5.5 requires a target size of at least 44 by 44 CSS pixels for touch targets.
  4. Percentage of Issues Found: Crystal Preston-Watson mention in here 2022 Automation Guild session that most accessibility experts agree that between 20% and 40% of accessibility issues can be found through automated testing. This metric can help teams understand the effectiveness of their automated accessibility testing efforts and highlight the need for manual testing.
  5. Percentage of Content with Captions: Pragati Sharma shares an example where a streaming company was required to add closed captions to 100% of their content within two years. This metric can be used to track progress towards making video content fully accessible.

It's important to note that the W3C states that approximately 15% of the world's population has some form of disability. This statistic underscores the importance of accessibility and can be used to emphasize the potential impact of accessibility efforts on a website's user base.

By tracking these metrics and adhering to established guidelines like WCAG 2.1, teams can ensure that their websites are meeting accessibility standards and providing an inclusive experience for all users.

What are the different Types of Accessibility Testing?

Different types of accessibility testing aim to ensure that web and mobile applications are easily usable by individuals with disabilities such as visual, hearing, mobility, and cognitive impairments. The process involves thorough evaluation of the product against recognized accessibility standards and laws, such as WCAG Compliance, to address any existing accessibility issues.

Various key types of accessibility testing include:

  • Color Contrast Testing: This involves assessing the contrast of text against its background to meet specific standards, like the minimum contrast ratio required by WCAG for different types of text sizes.
  • Text Alternatives Verification: Verifying the presence of appropriate alternative text or aria-labels for images to aid users who cannot see the visuals.
  • Accessible Rich Internet Applications (ARIA) Testing: Ensuring proper application of ARIA roles and attributes on interactive elements like buttons, form controls, and live regions to enhance screen reader compatibility.
  • Keyboard Accessibility Testing: Testing the functionality of navigating through a website or application solely using the keyboard, including checking keyboard shortcuts that enable users to interact with links, buttons, and form controls effectively.

By conducting these types of accessibility testing, developers and testers work towards creating a digital environment that is inclusive and free from accessibility barriers, thus ensuring better user experience for individuals with disabilities.

Accessibility Advocate Crystal Preston-Watson breaks down accessibility testing into three main categories:

  • Manual Accessibility Testing: This involves testing applications manually for accessibility issues that may cause problems for users with disabilities. It includes using browser and plug-in tools like WAVE, Lighthouse, or aXe, as well as assistive technologies like screen readers and switches.
  • Automation Accessibility Testing: This involves using automated tools and frameworks to test for accessibility issues. Some examples include aXe, Applitools Contrast Advisor, and Espresso (for Android).
  • User/Usability Testing: This involves testing with people with disabilities to understand how the application or site performs in the real world and to find issues beyond just accessibility conformance.

Who should be involved in Accessibility Testing?

Thats easy – everyone on the team!

But seriously based on the insights provided by the experts I've spoken with, it's clear that accessibility testing should involve a diverse group of people to ensure a comprehensive and inclusive approach. Here's who should be involved in accessibility testing:

1. Quality Assurance (QA) Teams: QA professionals, play a vital role in ensuring accessibility standards are met. They are responsible for creating test plans, executing tests, and reporting issues.

2. Accessibility Specialists: Experts who have deep knowledge of accessibility guidelines and best practices, should be involved to provide guidance and support throughout the testing process.

3. Designers and User Experience (UX) Professionals: As Shweta Sharma points out, accessibility should be considered from the early stages of design. Designers and UX professionals should work closely with accessibility specialists to create inclusive designs that meet accessibility standards.

4. Developers: Developers play a crucial role in implementing accessible code and fixing identified issues. They should be knowledgeable about accessibility guidelines and work closely with QA and accessibility specialists.

5. Product Managers: Product managers are responsible for ensuring that accessibility is prioritized and included in the product roadmap. They should work with the team to balance accessibility requirements with other product goals.

6. Users with Disabilities: As emphasized by Crystal Preston-Watson involving users with disabilities in the testing process is essential. They can provide valuable insights and feedback on the real-world usability of the website or application.

7. Stakeholders: All experts mentioned the importance of educating stakeholders about the importance of accessibility. Stakeholders, such as business owners and executives, should be involved in the process to ensure that accessibility is given the necessary resources and priority.

8. Legal and Compliance Teams: Given the legal implications of accessibility, it's important to involve legal and compliance teams to ensure that the website or application meets all relevant regulations and standards.

Accessibility testing should involve a collaborative effort from QA teams, accessibility specialists, designers, developers, product managers, users with disabilities, stakeholders, and legal and compliance teams. By involving this diverse group of people, organizations can ensure that their digital products are accessible, inclusive, and compliant with relevant standards and regulations.

Your Top Accessibility Testing Tools

Accessibility testing is an essential part of creating an effective, accessible website. While you automate accessibility testing with tools, you save time and money, as well as improve testing accuracy and reliability.

Do not let a lack of resources stand in your way any longer. Let me know if I missed one of your favorite accessibility test automation tools, and I will add it to the list.

Join the Guild

{"email":"Email address invalid","url":"Website address invalid","required":"Required field missing"}

SafeTest: Next Generation Testing Framework from Netflix

Posted on 03/26/2024

When you think of Netflix the last thing you probably think about is ...

Top Free Automation Tools for Testing Desktop Applications (2024)

Posted on 03/24/2024

While many testers only focus on browser automation there is still a need ...

Bridging the Gap Between Manual and Automated Testing

Posted on 03/13/2024

There are some testers who say there’s no such thing as manual and ...