Reading Time: <20 minutes
What’s up Guys! Welcome to automationcalling.com
I was recently asked to research on Accessibility testing and automation possibilities. In fact, this is a grey area for me because I didn’t try this before. To be honestly saying, initially I wasn’t interested but while doing research, analysis and exploration it gave me motivation to work more on this, and probably got better clarity regarding how to achieve easily in Accessibility testing and automation coverage.
In fact, I’m not accessibility test specialist but below suggestions, ideas, techniques and comparing tools are purely based on my opinion.
Please keep it in mind, Automation testing is not replacement for manual testing, may be this will lead to separate discussion and debate, but at least in this case manual testing is still needed for accessibility standards and guidelines.
Note: In this blog, I’m not going to add automation examples by linking GitHub. This will cover mostly on manual side and automation tools comparison. I will post automation examples in my future blogs.
What is 508 & WCAG in Accessibility Testing?
Both Standards have same goal to make electronic and information technology accessible to people with disabilities (For eg., Visual, Motor, Auditory and Cognitive). There are three types of requirements for compliance:
- Technical Requirements: Coding of a website needs to be compatible with assertive technologies.
- Functional Requirements: The entire System should be usable by disable person.
- Support Requirements: Support documents and alternative information should also be accessible by people with disabilities
What is 508 & WCAG Differences?
WCAG 2.1 AND 508 are different. WCAG stands for Web Content Accessibility Guidelines. These guidelines are published by the World Wide Web Consortium’s Web Accessibility Initiative(WAI). These guidelines are primarily intended for those with disabilities using assistive technologies, but also include all user agents (a “user agent” can be a web browser, a mobile phone, a screen reader etc.).
The most notable difference between WCAG and Section 508 is the WCAG is a set of “recommendations” for websites, while section 508 is a law that applies to all Federal Agencies, it’s make sure your content is accessible to all.
What are Principles and its Guidelines?
Each principle has 3 Success criteria (Level A, Level AA and Level AAA) which start with easiest level to highest level. Please refer the link for further details https://www.w3.org/TR/WCAG21/
Note: If you are going to achieve Level AA then Level A is addressed part of this level, similarily if you are going to achieve Level AAA then Level A and Level AA are addressed part of this level.
The WCAG 2.1 guidelines provide a framework for website owners to make their content more accessible to people with disabilities
A: The easiest level to achieve, this improves accessibility for most sites by making it easier for browsing readers to navigate a site and translate its content, but it is still pretty basic.
AA: This level makes content accessible to people with a wider range of disabilities by providing guidance on elements such as color contrast and error identification. Regulators prefer this level.
AAA: The highest level of accessibility compliance, this makes content accessible to the widest range of people, but it can significantly alter the design of a site. Government legislation doesn’t typically require this because it’s not always possible to conform.
How to Achieve Minimum Accessibility Guideline for My Web Site?
This is something interesting questions, please keep it in mind, to achieve level of success criteria (A, AA, AAA) is purely depends on your type of website and end users.
Assume, your website is commercial like e-commerce/retail or booking movie ticket websites etc., this is generally used by common people and there are possibilities to be used by disable person, for eg., booking tickets, order something in amazon etc.,. In this case, I would strongly recommend to achieve “Level AAA”. Non-commercial/project/product based web sites that are mostly used by technical people or inside companies etc., In this case, I wouldn’t say AAA is not required, may be good to have, however “Level A or Level AA” is sufficient to achieve.
Here is the basic checklist I would recommend that we can achieve to minimum Level A or Level AA to inform your client or product management team stating that our application is compliance with 508/WCAG Standards.
Basic Checklist: The complete definition of blow checklist can be found here WCAG_Guidelines
- Verification of Page Title
- Image text alternatives (“alt text”)
- Contrast Ratio
- Link text should be descriptive
- Use Simple readable language
- Don’t use marquee or blink text or flash
- Tab Order
- Lists (instead of <ul> should be <ol>
- Disable CSS
- Ability to resize text
- Make all functionality available from a keyboard
- Images of text
- Hover for additional content
- Enlarging Text (Increase Size to 200% open responsive design View), Does text wrap properly?
Note: The above one is very basic checklist to mention your product or application is compliance with Accessibility standard. The levels of achievements is purely depends on types of websites and how QA/development team create test strategy and approach for accessibility testing.
What are Best Manual Testing tools?
There are many tools are available in the market but I personally prefer for manual testing tools are:
- AXE (Chrome add-on)
- WAVE (Chrome add-on)
- Total Validator
- Lighthouse (Chrome build-in but google use AXE engine)
Screen Reading tools for Blind people:
Accessibility testing Sample Screenshots using Tools Chrome Extensions
Lighhouse(Google Browser build-in extension):
Automation Tools and Comparison Metrics:
Automation tool is important for accessibility testing in terms of reduce cost, efforts and time.
I personally prefer the following open source and license automation libraries/tools for Accessibility testing.
Accessibility Automation Tools Comparison Metrics
Accessibility Automation Tools Conclusion:
In terms of adhere with Accessibility testing, we cannot automate any of above mentioned tools with 100% and Automation cannot be replaced with 508 and WCAG accessibility guidelines. Having said that, I recommend the following license and open source tool for POC to your projects.
In fact, License tools offer Accessibility assistance, support and training which helps organization to setup and plan right accessibility test strategy, as well as provide Rest API support which reduce more efforts on investing script development, whereas open source we have to plan and develop a lot of automation scripts for each page which expect and demand more investment in terms of cost, time and maintenance aspects.
License: Tenon, WAVE
Open Source: AXE, Pa11y , Light house (it is an open source but they use AXE engine)
- License provider offer training to organization regarding how to approach 508 and WCAG guideline, this will help to create test plan and strategy for accessibility test.
- License tools provide keep adding test suites to be automated easily based on market analysis and research for 508 and WCAG.
- License tools provider offer Rest API support which can be easily integrated in CI with less code.
- Catch issue before go to Live.
- Can handle more than one URL at a time.
- Headless browser testing is possible.
- Can spider a website.
- Can provide Comprehensive Reporting and History.
- Can integrate your test scripts with existing automation framework like Selenium, Selenium JS, Protractor.
- Cost Factor based on no of run through API
- Not all areas can be automated
- Need to write a lot of automation accessibility scripts for all pages using open source libraries which involve cost and resource factors.
Thanks for your time. Please subscribe automationcalling.com for more updates!