Accessibility testing involves ensuring that software applications are usable by people with disabilities, including those who have visual, auditory, motor, or cognitive impairments. Automated accessibility testing is critical for the usability of web and mobile applications, considering the increasing influence of software and apps in our daily lives. This article break downs the various aspects of automated accessibility testing, and the approaches to achieve it with the right tools.

This post was originally published in Perfecto.


Use Case: Automated Accessibility Testing

Problem Statement

Problem Statement


Accessibility testing of software becomes very challenging due to several challenges, such as dynamic content, cross-platform incompatibility, and above all, a lack of focus on accessibility during the design phase.

Realization Approach

Realization Approach


Automation is the key to software testing. When it is applied for accessibility testing, the end result is a web or mobile app that is accessible to those with disabilities, such as vision impairment, hearing disabilities, and other physical or cognitive conditions.

Solution Space

Solution Space


Accessibility works best when it is incorporated into the product’s design and test strategy from the onset, along with a robust test platform that supports advanced automation, full toolchain integration, and accessibility-related technological support.

What Is Automated Accessibility Testing?

Accessibility software testing is a type of testing done to ensure that your apps are usable by as many people as possible. Automated accessibility testing helps expedite your release cycle and identify any issues that differently-abled people may face early on.

Accessibility testing is about making your app’s content and services usable by people with disabilities of various types (vision, hearing, etc.). It’s also about ensuring that accessibility information can be discerned and the user interface operated. Automation helps you do this faster and with fewer defects.

In many cases, accessibility testing is done too late in the software development cycle due to lack of automation process, or lower priority.

Accessibility is as important as any other functional, performance, API, or any other testing that is being created and executed. To make accessibility testing more efficient and sustainable, you need to shift it left. Automation is critical to this.

Can Accessibility Testing Be Automated?

Accessibility testing can — and should — be automated.

Most accessibility tests today are done either manually, not at all, or too late in the software testing cycle. 

Accessibility needs to be embedded into your overall testing strategy, right from the beginning of development. Like other types of testing, by shifting left, you can identify accessibility defects when they’re less expensive to fix. Once an accessibility defect is in production, the cost to fix it can be 100x higher than when it’s addressed in the design.

Why Automated Accessibility Testing Is Important?

You need accessibility testing to meet the needs of all users. It is also the law. Between the Web Content Accessibility Guidelines (WCAG), Section 508, and the Americans With Disabilities Act (ADA), you have plenty of regulations to meet. Failure to do so could result in fines of $75,000-$150,000.

Automated accessibility testing is important to ensure user satisfaction, comply with market software standards like WCAG, and avoid business loss. This is especially important, as the World Bank estimates that 15% of people have a disability.

Accessibility testing ensures that everyone can use your web or mobile app. There’s also legislation around accessibility for people with disabilities. Automated accessibility testing helps you comply with this legislation.

This helps you reduce the risk of accessibility defects — and potential lawsuits.

Automated Accessibility Testing Use Cases

You need to ensure that your apps work with screen readers, speech recognition software, screen magnification, and more. Some of the most critical automated accessibility testing use cases include:

  • Labels: Used by assistive technologies, like VoiceOver or TalkBack.
  • Text contrast: Ratio between text or images and background color.
  • Hit area size: Area designated for user interaction.
  • View hierarchy of UI: Determines how easy the Android app is to navigate.
  • Dynamic font size: Option for users to increase the font size to fit their needs.

Accessibility Auditing

Here’s how to automate accessibility testing.

1. Make Accessibility a Focus Earlier — During Design

Accessibility needs to be a focus throughout your Agile process, starting with design.

Design plays an instrumental role in your testing. It provides the meaning for what you will be testing. And much of accessibility is in the meaning.

Your designers think about the components of their user interface. For example, they think about what a button with a little pencil inside of it does. That is, it pops up the Edit dialog box. The designers communicate what that button is going to do to the rest of the development team. It can then be used by developers to implement the functionality correctly. And you can write automated tests to ensure that the button attribute is what it should be.

This is an important step in automating accessibility testing.

2. Leverage Accessibility Testing Tools

It’s also important to leverage accessibility testing tools.

Accessibility testing can seem insurmountable. That’s because a lot of organizations approach accessibility testing from a manual perspective. With the right tools, you can approach it from an automated perspective.

First, you’ll want to consider generic accessibility testing libraries. They’re available for different platforms, such as HTML, Android, and iOS. They give you a set of acceptance tests for accessibility. We typically find that up 50% of accessibility issues can be found by leveraging these libraries.

Another accessibility testing tool you can leverage is interactive intelligent guided testing. This capability is embedded in a browser extension. For example, it allows developers to test for buttons and links. This ensures that the accessible names associated with buttons and links are accurate.

This is the type of information communicated from designers to developers and testers. You can use this information to write an automated test.

3. Create Automated Regression Tests For Accessibility

Regression tests are great candidates for automated accessibility testing. You can use the methodology above to create automated regression tests for accessibility. This can help you keep the costs of testing down. And, at the same time, you can eliminate most of your manual testing out of the development process.

4. Use the Right Test Automation Platform

Finally, to automate accessibility testing, you’ll need to have the right test automation platform. Perfecto, for instance, is a great test automation platform for accessibility testing.

That’s because Perfecto integrates with important tools used in accessibility testing — such as Axe — helping you automate accessibility testing for your web applications. Here’s an example of a web accessibility testing report.

image-blog-web-accessibility-testing

For mobile native apps (iOS and Android), leverage Perfecto’s native automated accessibility solution. Here’s an example of mobile accessibility testing.

image-blog-mobile-accessibility-testing

To get started with automated accessibility testing with Perfecto and its various integrations, users need to do the following:

  1. Retrieve the latest version of code from GitHub.
  2. Build the application and launch Selenium tests.
  3. Generate Junit test report in Jenkins.
  4. Deploy NeoLoad load generator.
  5. Run the load test with Perfecto integration.
  6. Define the Deque driver in Axe for accessibility testing.
  7. Review test executions in the Perfecto dashboard.
  8. Identify and fix accessibility issues.

Get Automated Accessibility Testing With Perfecto

Accessibility testing works best when incorporated into your testing strategies — don’t let it be an afterthought. Align it with your test cycle and sync your results all in one place with Perfecto’s test reporting. You’ll ensure that accessibility defects are caught earlier, when they’re less expensive to fix.

That’s because Perfecto gives you:

  • Unified testing for web and mobile apps.
  • Advanced automation.
  • Full toolchain integration.
  • Accessibility-related technological support, such as VoiceOver and TalkBack.
  • All results in one place.
  • Shift left testing.

See for yourself how you can leverage Perfecto for automated accessibility testing today with our 14-day free trial

About the author 

Radiostud.io Staff

Showcasing and curating a knowledge base of tech use cases from across the web.

TechForCXO Weekly Newsletter
TechForCXO Weekly Newsletter

TechForCXO - Our Newsletter Delivering Technology Use Case Insights Every Two Weeks

>