%% Last Updated: - [[2021-02-11]] tags: [] %% Author: [[Pragati Sharma]] This talk was part of [[Automation Test Guild 2021]]. Senior test consultant From Delhi Catch her on LinkedIn ## Log Accessibility is an underdog - not enough people are talking about that. What does "accessible" mean? - Easily obtainable - Everyone around the world can access it regardless of location, disability - 20% of the world is disabled - Easily understandable Not just for specific groups; it increases user experience for everyone - Many people use ramps vs staircases, even if they're not disabled Sometimes accessibility is a legal requirement; in some countries and for some industries, it's not optional. Accessibility can be automated so that we address defects faster (and even avoid lawsuits) [[Cypress]] - advantage: it runs within the browser, unlike other tools - has access to shadow elements Accessibility Engine called Axe - Can be used with Selenium and other functional testing tools Demo of Axe Coconut - lack of color contrast - `<html>` element must have a lang attribute - Form elements must have labels (for those who can't see) - Document must have one main landmark - You can click on each of these to see more about the problem and how to fix it Cypress project structure - Fixtures (data validation files) - Integrations (specification files with test suites and test cases) - Plugins - Support `cy.checkA11y()` checks for a11y standards violations Create Cypress automation framework from scratch with Axe ## Questions ### How do you prioritize types of accessibility testing (for hearing impaired, sight impaired, etc)? Product owners should have user personas Check your user metrics and prioritize accordingly Check after a product is launched as well ### How can accessibility testing be done on mobile apps? We need to prioritize this as well. Which kind of mobile apps? Android, iOS, different versions? UBank - open source GH repository. Tests mobile Axe does Android as well (not iOS) lyly ### How do you get management buy-in for accessibility testing? Show them buggy web apps with the accessibility issues. Live examples are great - companies that did not do accessibility testing. But don't go to them with a problem; go to them with a solution. ### Who should do accessibility testing? Final go-ahead should lie with QAs, but everyone should be involved. ### Is a small font a UI/UX issue or an accessibility issue? Well, how small is the font? :D Accessibility standards can help to give some guidance here. ### How do you handle it when devs say they can't fix an accessibility issue because of technical limitations? Get backing from product owners ### How do you measure coverage? No automation tool can cover 100% of the test cases. You'll still need to do some things like voiceovers (for Mac), screen readers, gestures, keyboard shortcuts, etc. So coverage should not be a parameter to measure for accessbility because it will never go beyond 50%. ### Best frameworks for accessibility automation? Axe is the one she's worked with the most, because it's open source. It's also her favorite. Get the concept right first before you think of the tooling. Tooling is secondary, and sometimes if you focus too much on the tool, you might actually not even be testing the right thing. ### Axe will also integrate with: Selenium, Test Cafe, Typo Don't overkill it on the accessibility - you're not going to need an accessibility check after every step ### Accessibility issues under high load? There are some dependencies that show shadow DOM elements. It's not really related load, but front-end performance. ### Reporting Cypress reports all accessibility violations ## Transcript ![[Pragati_AutomationGuild_A11yAutomation_Transcript.pdf]] ## Thoughts Are inclusive language and translations into other languages an accessibility problem?