Make websites, web apps, and native mobile apps usable for everyone. Learn the types of accessibility testing, WCAG 2.2 standards, real test cases, and how to stay compliant with the ADA, Section 508, and the EAA.


World’s Largest Virtual Agentic
Engineering and Quality Conference
Trusted by 2M+ users globally at
"We have tripled our tests and are now executing tests in less than 2 hours with 78% Faster Test Execution"
"We figured out a more efficient way to monitor system health and resolve failures earlier in lower environments."
"TestMu AI UI is really good and user-friendly; supports testing with different OS, Versions, browsers, and devices."
"With 70% faster test execution, TestMu AI helped us achieve faster time-to-market and enhanced CX."
Accessibility testing is the practice of evaluating a website, web app, or native mobile app to confirm that people with visual, auditory, motor, or cognitive disabilities can perceive, operate, and understand it. It measures conformance against the WCAG success criteria, organized under four principles, Perceivable, Operable, Understandable, and Robust (POUR), and against the laws that reference them, the ADA, Section 508, and the European Accessibility Act.
It is a non-functional testing type, and in practice it runs in three layers: automated scans that catch deterministic failures such as missing alt text, low contrast, and invalid ARIA; manual testing with screen readers and keyboards for the judgment calls automation cannot make; and validation with real assistive-technology users. Because every release can introduce a new barrier, it is run continuously rather than once, and it covers native mobile apps as well as the browser.
Meet WCAG 2.2, the ADA, Section 508, and the European Accessibility Act, and cut the risk of lawsuits and regulatory penalties.
Make your product usable for the 1.3 billion people, 1 in 6 worldwide, who live with a disability.
Semantic structure, captions, contrast, and keyboard support help every user and improve search visibility.
Catch issues during design and development instead of retrofitting a shipped product where defects are tangled into production code.
Test browsers and native Android and iOS apps under one WCAG program instead of disconnected tools.
Run automated WCAG checks on every build so accessibility regressions fail fast, like any other test.
Accessibility testing is how teams confirm that people with disabilities can actually use a website, web app, or mobile app. The gap between products that pass and products that ship is wide, and it carries legal, commercial, and engineering cost. Skipping it locks out a large audience and risks non-compliance with WCAG 2.2, the ADA, Section 508, and the EU's European Accessibility Act.
95.9% of the top 1M home pages fail WCAG 2 (WebAIM Million 2026) | 1.3B people, 1 in 6 worldwide, live with a disability (WHO) | 39 WCAG-aligned checks auto-scanned on every build | 10,000+ real Android and iOS devices for mobile accessibility |
This guide covers the types of accessibility testing, the key compliance frameworks, the test cases that matter, and how to build accessibility into your workflow with a cloud-based accessibility testing platform.
Overview
What Are the Types of Accessibility Testing?
Three approaches: manual testing with screen readers and keyboards, automated scanning of the DOM for deterministic violations, and a hybrid model that gates every build with automation while reserving manual testing for the judgment calls. Most programs run all three.
Manual vs. Automated Accessibility Testing
Manual testing involves human testers using screen readers, keyboard navigation, and assistive tools to evaluate real user experiences. Automated testing uses an engine like Axe-core to quickly scan for common violations such as missing alt text, poor color contrast, and improper HTML structure. A combined program is strongest: TestMu AI pairs an Axe-core scanner that runs 39 WCAG-aligned checkpoints with a built-in screen reader and an accessibility DevTools extension, so both halves run in one place.
Why Is Accessibility Testing Necessary?
It is a legal requirement under WCAG 2.2, the ADA, Section 508, and the European Accessibility Act; it expands reach to the 1.3 billion people worldwide who live with a disability (WHO); and it improves UX and SEO for everyone. Issues caught early also cost far less to fix than retrofitting a shipped product.
How Do You Perform Accessibility Testing?
Run automated WCAG scans on every build to catch common failures, then manually test keyboard navigation and screen reader output for what automation cannot judge. Schedule recurring scans to catch regressions, and cover native mobile apps on real devices, not just the browser.
Accessibility testing splits into three approaches. Most teams run all three, because each catches issues the others miss.
| Aspect | Manual Accessibility Testing | Automated Accessibility Testing |
|---|---|---|
| How it works | A tester drives the product with a screen reader (NVDA, JAWS, VoiceOver) and the keyboard alone, judging whether the experience actually works, not just whether the markup is technically present. | An engine such as Axe-core parses the rendered DOM and flags rule-based violations: missing alt text, low contrast, empty labels, invalid ARIA. It is deterministic and repeatable but reasons about code, not meaning. |
| Strengths |
|
|
| Where it falls short | It is slow and resource-heavy, needs trained testers, and does not scale to a large site on its own. | A Deque study found it covers only about 57% of issues; it is blind to judgment calls like meaningful alt text and intuitive focus order. |
| Best for |
|
|
| When to use | Pre-release audits of critical flows like sign-up and checkout, validating custom components, and confirming the screen reader experience before a launch. | Gating every CI build, regression-checking large sites, and catching the common, high-frequency violations as early as the commit that introduces them. |
The split matters because automation has a ceiling. The W3C is explicit that evaluation tools cannot determine accessibility, they can only assist in doing so. Automate the deterministic checks on every commit, and reserve manual plus assistive-technology testing for keyboard traps, focus order, and whether screen reader output actually makes sense.
Accessibility is not one audience. Testing has to account for four broad categories of disability, each with different barriers and assistive technology:
A test plan that only checks one category, usually visual, leaves the other three untested. Mapping each test case to the disability it protects keeps coverage honest.
Accessibility is a legal requirement, and the bar keeps rising. In April 2024 the US Department of Justice adopted WCAG 2.1 Level AA as the Title II standard for state and local government websites and apps, and in the EU the European Accessibility Act has applied to private-sector digital products and services since 28 June 2025. Non-conformance invites lawsuits, fines, and lost public-sector contracts, so your tests should map to the frameworks below:
Note: Manually mapping every screen to WCAG 2.2 is slow. TestMu AI scans your pages against WCAG, ADA, and Section 508 and points to the exact elements to fix. Start Testing Now!
| Region | Compliance Standard | Description |
|---|---|---|
| United Kingdom | Requires organizations to make reasonable adjustments to ensure that disabled people can access their services, including online services. | |
| United States | Ensures accessibility of electronic and information technology used by federal agencies, closely aligning with WCAG 2.0 Level AA guidelines. | |
| Europe | Sets common accessibility requirements for certain products and services, including websites and mobile apps, across EU member states. | |
| Canada | Prohibits discrimination based on disability and requires that federal government departments and agencies ensure their electronic content is accessible. | |
| India | Mandates that websites and online content be accessible to persons with disabilities, though specific standards may vary. | |
| Australia | Prohibits discrimination against people with disabilities and requires that public services, including websites, be accessible. |
TestMu AI covers accessibility across the whole delivery lifecycle: CI/CD automation, scheduled monitoring, native mobile app testing, live testing on real devices, a browser DevTools extension, and screen readers. Here is how each surface works.
TestMu AI Accessibility Automation runs WCAG checks inside your existing Selenium, Cypress, and Playwright suites, so every automated run also flags accessibility regressions without extra effort.
With automatic DOM monitoring, the checks keep running as your UI changes, so accessibility compliance does not drift between releases.
To kick off automated accessibility testing, check out the guide on Accessibility Automation.
Every automated run produces the same artifact for each violation: the failing element, the WCAG success criterion it breaks, a severity rating (Critical, Serious, Moderate, or Minor), and specific fix guidance, all collected in the Accessibility tab of the Automation dashboard. Because the scanner applies the same 39 WCAG-aligned checkpoints on every build, a contrast regression or a newly unlabeled field fails the run the moment it is introduced, instead of surfacing weeks later in an audit.
Here is a minimal Playwright check using the open-source @axe-core/playwright integration. It fails the build on any WCAG 2.1 A or AA violation, so accessibility regressions are caught in CI like any other test:
const { test, expect } = require('@playwright/test');
const AxeBuilder = require('@axe-core/playwright').default;
test('selenium playground has no WCAG A/AA violations', async ({ page }) => {
await page.goto('https://www.testmuai.com/selenium-playground/');
const { violations } = await new AxeBuilder({ page })
.withTags(['wcag2a', 'wcag2aa', 'wcag21a', 'wcag21aa'])
.analyze();
expect(violations).toEqual([]);
});That example runs the open-source axe engine locally. TestMu AI's own Accessibility Automation works differently: it triggers the scan on the cloud grid through a lambda-accessibility-scan hook (called after each stable screen) and reports every violation into the Accessibility tab of the Automation dashboard, so you get the same WCAG checks across real browsers and operating systems without wiring up axe yourself.
Step 1: Set Up Your Test Suite
You can configure and test using your own project or a sample repository. If using your own project, update the Hub endpoint in your test file to establish communication between your tests and browser nodes. Configure the desired capabilities as needed:
ChromeOptions browserOptions = new ChromeOptions();
browserOptions.setBrowserVersion("latest");
HashMap<String, Object> ltOptions = new HashMap<>();
ltOptions.put("platformName", "Windows 11");
ltOptions.put("build", "Accessibility Automation Build");
ltOptions.put("name", "Accessibility Java Sample");
ltOptions.put("user", System.getenv("LT_USERNAME"));
ltOptions.put("accessKey", System.getenv("LT_ACCESS_KEY"));
browserOptions.setCapability("LT:Options", ltOptions);
Step 2: Establish User Authentication
Export your TestMu AI credentials from the TestMu AI Profile page using the commands below:
Linux / MacOS:
export LT_USERNAME="YOUR_LAMBDATEST_USERNAME"
export LT_ACCESS_KEY="YOUR_LAMBDATEST_ACCESS_KEY"
Windows:
set LT_USERNAME="YOUR_LAMBDATEST_USERNAME"
set LT_ACCESS_KEY="YOUR_LAMBDATEST_ACCESS_KEY"
Step 3: Configure Accessibility Capabilities
Add the accessibility keys to the same LT:Options block. Target Level AA, since that is the conformance level the ADA, Section 508, and the EAA reference:
ltOptions.put("accessibility", true); // Enable accessibility testing
ltOptions.put("accessibility.wcagVersion", "wcag21aa"); // Target WCAG 2.1 Level AA
ltOptions.put("accessibility.bestPractice", false); // Exclude best-practice-only issues
ltOptions.put("accessibility.needsReview", true); // Include issues that need manual review
Step 4: Execute and Monitor Your Test
Run your tests and access the Automation Dashboard. Click on the Accessibility tab to view the generated report.
If an AI coding agent such as Claude Code, Cursor, GitHub Copilot, or Gemini CLI writes or maintains your test suite, the accessibility-skill in TestMu AI's open-source agent-skills repository teaches the agent the exact capability names, scan hooks, and framework quirks for turning on accessibility scanning in Selenium, Playwright, Cypress, or Appium, instead of letting it guess or hallucinate an API.
Install it alongside any other framework skill already in use:
git clone https://github.com/LambdaTest/agent-skills && cd agent-skills
npx agentskillsforall add https://github.com/LambdaTest/agent-skills.git --skill accessibility-skillOnce installed, a prompt like "add the accessibility capability to my Selenium suite and scan the checkout page with WCAG 2.1 AA" is enough for the agent to wire up the same accessibility capability and lambda-accessibility-scan hook covered above, correctly for whichever framework is in use. For the full framework-by-framework setup, severity scoring, and what automation still cannot catch, see our guide on using the accessibility agent skill.
One-off scans miss the regressions introduced after launch. Scheduled accessibility scans run on a recurring basis without anyone kicking them off. Add URLs manually, by CSV upload, or by pointing it at your sitemap, set a daily, weekly, or monthly cadence with a timezone, and configure saved logins or a tunnel for pages behind authentication. Email and Slack alerts fire when a scheduled run detects new violations, so a content editor publishing an image without alt text is caught the same day, not at the next audit.
Native Android and iOS apps carry success criteria a browser scanner never sees: touch target sizing, Dynamic Type and font scaling, and TalkBack or VoiceOver labelling. The App Scanner lets you inspect a native build screen by screen on a real device, with no code required. It validates accessibility labels, on-device color contrast, touch targets (minimum 44x44 dp), Dynamic Type support, and screen reader announcements, running on real devices rather than emulators.
To shift native app accessibility into CI, add an accessibility-scan checkpoint to an existing Appium suite. It runs the platform's automated mobile rules, 15 for iOS and 18 for Android, after each stable screen, and reports into the same Accessibility tab as your web runs. For no-code mobile flows, KaneAI can insert an accessibility scan step into a test by typing a command, with no Appium code, on iOS 17 and later and all supported Android versions.
Run a manual accessibility check on any URL on real Windows and macOS browsers. This is how you test website and web-app accessibility interactively before automating it:

The TestMu AI Accessibility DevTools Chrome extension lets developers and testers scan pages for WCAG issues directly in the browser and get fix guidance inline. Here is how to use it:

You will be redirected to the Chrome Web Store, where you can install the TestMu AI Accessibility DevTools extension. This tool will help you evaluate the accessibility of your website.



To get a detailed analysis of your accessibility scan, click on the “Dashboard” button on the accessibility devtools menu. You can also access the report directly through your TestMu AI dashboard.
Automated checks confirm an accessible name exists; only a screen reader confirms it makes sense when read aloud. In a live session, open Settings and select the Screen Reader checkbox to get a verbal description of the page from the screen reader bundled with the chosen OS, NVDA on Windows or VoiceOver on macOS, with TalkBack and VoiceOver covering native mobile apps. Walk the critical flows, sign-up, checkout, and error states, and listen for whether labels, focus order, and announcements actually guide a non-sighted user.

The reach goes beyond web and mobile screens: the platform also scans PDF documents for screen reader compatibility and exposes accessibility analysis inside AI coding tools through a Model Context Protocol (MCP) server, so a developer can request a scan from the editor while building. The point of spanning these surfaces is one compliance record instead of disconnected tools.
These are standard accessibility test cases every web and mobile app should pass; together they catch the most common accessibility issues. An accessible product works with screen readers, speech-recognition software, and screen magnification:
It helps to see what a scan actually surfaces. Each example below pairs a common real-world failure with the WCAG success criterion it breaks and the concrete fix, so you know not just what to check but what "pass" looks like.
Example 1 - Low color contrast (WCAG 1.4.3)
Light-gray placeholder text on a white field is the most-flagged violation on the web. WCAG 1.4.3 requires a contrast ratio of at least 4.5:1 for normal text and 3:1 for large text (18.66px bold or 24px regular). A scan reports the measured ratio and the failing element; the fix is darkening the foreground or lightening the background until it clears the threshold. See our deeper guide on color contrast accessibility.
Example 2 - Missing or unhelpful text alternatives (WCAG 1.1.1)
An automated tool flags an image with no alt attribute, but it cannot judge whether alt="image1.jpg" is meaningful. That is the split between automation and manual review: automation confirms the attribute exists; a human confirms it describes the image's purpose. Decorative images take an empty alt="" so screen readers skip them.
Example 3 - Incorrect ARIA roles (WCAG 4.1.2)
A div styled to look like a button but missing role="button" and keyboard handlers is announced as plain text by a screen reader. WCAG 4.1.2 (Name, Role, Value) requires every interactive control to expose its name and role. The fix is usually a native button element, or the correct ARIA role plus keyboard event handling when a native element is not possible.
Example 4 - Keyboard traps and focus order (WCAG 2.1.1, 2.1.2)
A modal that opens but cannot be dismissed with the keyboard traps a keyboard-only user. This is a judgment call automation flags as passing, which is why a Keyboard Scan and a manual screen reader pass matter. WCAG 2.1.1 requires every action to be keyboard-operable and 2.1.2 forbids focus traps; the fix is trapping focus inside the modal while open and returning it to the trigger on close.
Most accessibility programs stall on the same few problems. Here is how to handle each:
Strong accessibility programs share a few habits. Build these into your workflow:
Start by running an automated scan on your highest-traffic page, then triage the violations by WCAG level. Layer in manual screen reader and keyboard testing for the flows automation cannot judge, wire the axe-core check into CI so regressions fail the build, and schedule a full manual audit before each major release.
To put this into practice, run your first scan with the TestMu AI accessibility testing cloud and follow the accessibility testing documentation for setup. To validate your skills, the Accessibility Testing 101 certification walks through WCAG conformance hands-on.
For ongoing coverage, work through our web accessibility guide and the web accessibility checklist to keep WCAG 2.2 compliance on track across releases.
Author
Ajay Balamurugadas is a software tester with nearly 19 years of experience and a co-founder of Weekend Testing. He is an active voice in the Context-Driven Testing community and a graduate of Rapid Software Testing, BBST, and Problem Solving Leadership. He has authored several practical testing books, including 50+ Mistakes of My Software Testing Career, and delivered the keynote at CAST 2015. On TestMu AI (formerly LambdaTest), he writes on accessibility testing and improving as a software tester.