Introduction to Accessibility Testing
Accessibility testing can be defined as a type of product testing performed in which the disability-friendly features have been ensured. These disabilities include deaf, blindness, handicapped (any type), or some other disorders in the human body. These people are readily the user base of the product and cannot be ignored, as suggested by various legislations. Accessibility testing is known as a subset of usability testing. We will discuss Usability testing later on this website.
By incorporating various types of accessibility testing into your QA practices, your team can ensure that all content within your web application is reachable to anyone without barriers. Testing teams often incorporate accessibility testing tools when performing these tests to ensure their applications are compatible with assistive technology, including speech recognition software, screen reader software, screen magnification software and special keyboards.
In order to make the content widely accessible and reachable, the production team ensures that the web/mobile application should be properly equipped with features that support physically disabled people as well; and it is done by incorporating the multiple segments of accessibility testing iont he testing and QA practices. With the help of various testing tools, the team performs accessibility testing to ensure that applications are properly covered by physically challenged people by checking the product’s compatibility with speech recognition software, screen magnification feature, special keyboards screen reader feature, assistive technology, screen inversion feature, etc.
Here we are mentioning some APIs that help support the assistive technology features people with disabilities use.
- Speech Recognition Software: It is used to convert spoken language into text. It serves as the input to the computer or mobile device.
- Screen reader software: It is used to read aloud the text written/displaying on the screen
- Screen Magnification Software: It is used to magnify the screen and help vision-impaired users to read the text easily.
- Special keyboards: These are the keyboards that support people facing motor control challenges by providing them an easy typing solutions
Requirement of Accessibility testing
When we gather the information about functional testing, beta testing, usability testing and other forms, we tend to cover the user base where the functionalities were proposed based on the product demands, whereas the need to the accessibility is to understand the needs of the specific section of the user base along with the meeting the some legislation standards among various countries. Let’s discuss
Reason 1: Expanding the market to physically-challenged People
A software product can cater to this big market, if a software product is made disabled friendly, the access to this product will cover more market and database. And the accessibility features and later their testing ensures the organization to resolve this challenge further.
Reason 2: Meeting the Accessibility Legislations
Accessibility testing isn’t just a nice-to-have best practice—it’s the law. The government is on the side of the people in ensuring that all technologies, including web-based and mobile applications, are accessible for all. Along with the social practice, widening the access to disabled people comes under the law also. The governements ensures via their legislations that these segments of people are not deprived of the latest technologies and the product makers adhered to the process of providing accessibility of web/mobile applications to these segments as well. Let’s discuss some of those legislations:
- India’s The Rights Of Persons With Disabilities Act, 2016: This is an upgraded version of the PWD act, 1995. In RPWD 2016, various points of Chapter 8 mention that the accessibility to various technologies (information and communication), services and other infrastructure should be widened to the people with disabilities.
- Americans with Disabilities Act Section III: This law ensures that domains such as organizations, schools, and public infrastructure must be accessible to every segment of the society and it includes web/mobile based technologies as well
- Title II of ADA: It enforces that all services, programs, and activities introduced by the central or state government can be accessed by all people under the umbrella of the nation. Similar to others, it also covers all information technology based products.
- Sections 504 and 508 of The Rehabilitation Act of 1973: Section 504 enforces that rational accommodations should be available for physically challenged people within the educational and learning institutions, organizations and workplace. Section 508 mentions the requirements should be met by these institutions in order to make the technology accessible for everyone.
The Web Content Accessibility Guidelines (WCAG): Such protocols provide the accessibility testing examples and recommend various and vital accessibility testing types to make the development and QA teams track down the methods through which the applications’ accessibility can be enhanced. There are four main principles WCAG recommends:
- Perceivable: User can understand the displayed information and how to operate the application’s UI
- Operable: No barriers and issues should come across while operating the application and Ui interface components
- Understandable: All users can comprehend the information displayed and grasp the meaning of the information being given by the application
- Robust: Equipping the application with assistive technologies
What should Accessibility testing address?
Here are the four major types of disabilities that should be addressed while performing the accessibility testing to enhance the accessibility features of the application. The test cases should confirm that the product can provide a seamless experience to the users having specific disability.
- Vision: It includes blindness, color blindness, vision impairment which create difficulty watching videos or reading words on the screen.
- Hearing: People who face difficulty hearing the data from the device.
- Mobility: Due to having motor functioning disability, users face difficulty in physical movements, such as a keyboard or mouse.
- Cognitive: When the user faces difficulty in recognizing, focusing or decision making.
Strategies to Accessibility testing
The process of accessibility testing covers the two ways, that is
Following are the point’s need to be checked for the application to be used by all users. This checklist is used for signing off accessibility testing.
- Whether an application provides keyboard equivalents for all mouse operations and windows?
- Whether instructions are provided as a part of user documentation or manual? Is it easy to understand and operate the application using the documentation?
- Whether tabs are ordered logically to ensure smooth navigation?
- Whether shortcut keys are provided for menus?
- Whether the application supports all operating systems?
- Whether response time of each screen or page is clearly mentioned so that End Users know how long to wait?
- Whether all labels are written correctly in the application?
- Whether the color of the application is flexible for all users?
- Whether images or icons are used appropriately, so it’s easily understood by the end users?
- Whether an application has audio alerts?
- Whether a user is able to adjust audio or video controls?
- Whether a user can override default fonts for printing and text displays?
- Whether user can adjust or disable flashing, rotating or moving displays?
- Check to ensure that color-coding is never used as the only means of conveying information or indicating an action
- Whether highlighting is viewable with inverted colors? Testing of color in the application by changing the contrast ratio
- Whether audio and video related content are properly heard by the disability people ? Test all multimedia pages with no speakers in websites
- Whether training is provided for users with disabilities that will enable them to become familiar with the software or application?
Accessibility testing may be challenging for testers because they are unfamiliar with disabilities. It is better to work with disabled people who have specific needs to understand their challenges.
There are different way of Testing the Accessibility depending upon the Disability. We will learn all them one by one.
Accessibility Testing Tools
There are various tools that provide their contribution toward checking the accessibility of the application in order to make it more acceptable and user friendly and later giving speedy results.
Let us discuss some of the popular tools:
Wave: Created by WebAIM, Wave is a free suite that helps teams to validate the web pages manually for multiple aspects and making their content more accessible for the physically challenged people. This tool can be used to analyze web pages that could be intranet-based, dynamically-generated password-protected or sensitive web pages. Its major functions include web page components identification, granting alternatives to view web pages, and allowing the use of third party apps and meanwhile ensuring 98% secure and private accessibility reporting.
TAW: It is another important tool used to determine the accessibility of the website or the web page. This tool works according to the W3C web accessibility guidelines in order to analyze and show the websites’ accessibility issues and reports. Issues are divided into three levels: Priority 1, priority 2 and priority 3. In this tool, we can test either the single page or multiple pages by “spider” the site. And with the help of “User Checking” dialogue box, it defines additional checks as well.
Developer tools: Developer tool is an extension to Google chrome. It functions as the audit of the accessibility features, and keeps the web pages adhered to the accessibility rules.
Webanywhere: Similar to jaws, This functions as the screen reader tool and helps the users in reading the web pages.
Adesigner: Developed by IBM, this tool creates a simulation that helps the designers, and to design the website accordingly, in understanding the requirement of the visually-impaired people so that they can use the web pages.
In Software Engineering, Accessibility testing helps in making your application disabled friendly. If following accessibility guidelines is not possible due to complexity of your web application, build one version of the website for regular users and other for disable.