Accessibility Testing

Published date: April 15, 2024, Version: 1.0

Accessibility testing is the process of evaluating a product, service, or environment to determine how accessible it is to differently-abled people. Web accessibility testing is a subset of usability testing where the users under consideration have disabilities that affect how they use the web.

Accessibility testing should confirm that the product provides a seamless experience for everyone, including those with the following disabilities:

  • Vision: Difficulty in watching videos or reading text due to complete blindness, colour blindness or vision impairment.

  • Hearing: Difficulty in hearing verbal communication or digital media due to deafness or hearing impairment.

  • Mobility: Difficulty with physical movement, including using physical requirements of technology, such as a keyboard or mouse.

  • Cognitive: Difficulty in remembering, concentrating, or making decisions

Guidelines & Standards

Accessibility testing is not just a nice-to-have best practice, but it is the law. The government is on the side of the people in ensuring that all technologies, including web-based and mobile applications, are accessible to all.

  • The Canadian Standard on Web Accessibility (2011) requires all Canadian government websites and web applications to conform to WCAG 2.0 Level AA. “To ensure a high level of Web accessibility is applied uniformly across Government of Canada Websites and Web applications.”

    • Web Content Accessibility Guidelines (WCAG): These protocols provide accessibility testing examples and recommend types of accessibility testing so that development and QA teams can discover ways to improve application accessibility. Please refer to the WCAG guidelines for details on this.

    • Accessibility for Ontarians with Disability Act (AODA) requires that public-facing websites meet Web Content Accessibility Guidelines (WCAG) version 2.0 Level A and AA criteria. WCAG was developed by the World Wide Web Consortium (W3C) and is the internationally accepted standard for web accessibility.

    • Accessibility evaluations should start right at the beginning of product design and be included in subsequent development iterations through to final delivery. Thus, Accessibility testing works best when incorporated into the testing strategies.

Types

  • Functional Testing: Testing the product, service, or environment with assistive technologies, such as screen readers, keyboard-only navigation.

  • Usability Testing: Testing includes recruiting people with disabilities to understand the ease of using a product, service or environment and providing feedback on their experience.

  • Compatibility Testing: This includes testing the product on other operating systems, browsers, mobile devices, and a wide array of assistive technologies.

  • Performance Testing: This involves evaluating how a product performs to ensure versatile usage, e.g. load time of a website or application, and the responsiveness of buttons and controls. Tools like SonarQube can be used for this purpose

Approach

Accessibility testing can be approached using different techniques like manual testing, automated testing, user testing, code inspection, compliance testing, and heuristic evaluation. A combination of these approaches is usually the best way to ensure that accessibility issues are identified and addressed.

  • Manual testing: Testing using different assistive technologies, such as screen readers and keyboard-only navigation, and testing by people with disabilities.

  • Automated testing: Using software testing tools to scan a website or application for accessibility issues, such as missing alternative text for images or inaccessible form controls. These tools can provide a quick assessment of the accessibility level of a website or application. However, they may not be able to detect all accessibility issues.

  • User testing: Recruiting people with impairments to test the product, service, or environment and providing feedback on their experience.

  • Code inspection: Reviewing the code of a website or application to ensure that it meets accessibility standards and guidelines.

  • Compliance testing: Testing against accessibility standards and guidelines like the Web Content Accessibility Guidelines (WCAG), etc. to ensure that the product, service, or environment adheres to compliance standards.

Accessibility Testing Methodology:

 

Platform Web Accessibility Mobile Accessibility
Visually Impaired User
  • Use of  Color Contrast Analyzer to check the contrast between text and background in the web pages.

  • Adjust the size of the text on the browser & use assistive software’s (magnifiers) to magnify the web page.

  • Use screen readers (NVDA/JAWS) and test webpage with/without the monitor.

  • Adjust the size of the text on the browser & use assistive software’s (magnifiers) to magnify the web page.

  • Use screen readers (Voiceover/ Talkback) and test webpage.

User Impaired with Motor Skills
  • Test the complete web page using keyboard only to simulate the experience of a user who cannot use the mouse due to physical impairment.

  • Test the complete web page with the help of screen reader gestures or Bluetooth keyboard to simulate the experience of a user who cannot use the mouse due to physical impairment.

User with Hearing challenges
  • Check if captions, transcripts are provided for video/audio content and are in sync/equivalent with video/audio content.

  • Check if the audio descriptions are provided for video content wherever necessary.

  • Check if the captions, transcripts are provided for video/audio content and are in sync/Equivalent with video/audio content.

  • Check if the audio descriptions are provided for video content wherever necessary.

User with cognitive challenges
  • Check if the content of the page is descriptive and easy to understand.

  • Carefully examine the text content and validate if it is easily understood and provides precise information

  • Check if the content of the page is descriptive and easy to understand.

  • Carefully examine the text content and validate if it is easily understood and provides precise information

Accessibilty Testing Checklist

  • Text alternatives: Check that all images and other non-text elements have appropriate text alternatives, such as alt text, that describe the purpose or content of the element.

  • Colour contrast: Verify that the colour contrast between text and background is sufficient for users with visual impairments, such as those with low vision or colour blindness.

  • Keyboard accessibility: Ensure that all functionalities can be completed using only a keyboard and that there are no keyboard traps or other issues that prevent keyboard-only users from accessing the content.

  • Resizable text: Check text one can resize without using assistive technology and that the layout does not break or become unreadable after resizing the text.

  • Labels and form fields: Check that all form fields have appropriate and clear labels and that the labels are appropriately associated with the fields.

  • Navigation: Test the navigation for a clear and consistent structure that is easily discoverable and usable for users with assistive technology.

  • Multimedia: Verify that all multimedia, such as video and audio, have captions and transcripts and that users can pause, stop, or skip them.

  • Error Messages: Check that error messages are clear, informative, and accessible to all users.

  • Language: Test that the website or the application is available in multiple languages or that users can easily change the language.

  • Compliance: Verify that the website or application meets accessibility guidelines and standards, such as WCAG 2.1, etc.

Tools

  • CTC In-House Tools:

    • Browser extension Wave tool for testing in Chrome and Firefox browsers.

    • Screen reader NVDA for Windows.

    • Screen reader TalkBack for Android.

    • Screen reader VoiceOver for Mac and iOs.

    • Keyboard navigation - TAB, Arrow, ENTER, and space bar keys.

    • Locales: EN and FR on desktop (Chrome, Safari, FF, Edge browsers) and mobile devices Android and iOS (Chrome, Safari browsers).

    • Selected Tools & Plug-ins

  • Apart from the above available tools, the below tools may be explored for POC & adoption:

    • WAT (Web Accessibility Toolbar): An add-on with IE browser that checks the web page/application against Accessibility guidelines by selecting the options manually from the toolbar.

    • Windows Magnifier is a magnification tool and is used to test the application’s magnification features based on the user's need (assistive tech tool-screen magnifier).

    • JAWS is the Screen Reader, which is used in accessibility testing to test with assistive technologies (assistive tech tool-screen reader).

    • DNS is the Voice to text conversion tool (assistive tech voice recognition).

Best Practices

  • Test early and often: Testing accessibility should be a part of the development process, and testers should perform it at multiple stages, such as during design, development, and QA.

  • Test with real users: User testing is the best way to discover and address accessibility issues. Test with a diverse group of users, including those with different disabilities.

  • Test across devices and browsers: Accessibility issues can differ depending on the device and browser used. Test on different platforms, browsers, and devices.

  • Check for compatibility with assistive technologies: It is important to test the website or application with different assistive technologies, like screen readers, to ensure that they are compatible.

  • Document and track issues: Keep a record of all accessibility issues found during testing and track them to resolution.

  • Regularly update and maintain the site: Websites are dynamic and change frequently, so accessibility testing should be a regular practice to maintain the accessibility.

  • Use Web Accessibility Guidelines (WCAG): WCAG provides a set of guidelines and success criteria for accessible web design.

  • Select the right tools: A wide array of tools helps to identify and fix accessibility issues. They help automate some of the testing processes and quickly identify common issues.