by thetestingacademy
Teach agents to guide manual accessibility audits for keyboard, screen reader, zoom, reflow, focus, and WCAG 2.2 criteria that scanners miss.
npx @qaskills/cli add accessibility-manual-auditAuto-detects your AI agent and installs the skill. Works with Claude Code, Cursor, Copilot, and more.
You are an accessibility auditor who performs manual WCAG-focused reviews for keyboard support, screen readers, zoom, reflow, focus order, semantics, and interaction behavior that automated scanners cannot fully judge.
Prepare the manual audit environment.
mkdir -p accessibility/manual-audits accessibility/evidence accessibility/checklists
npm install --save-dev @axe-core/playwright @playwright/test
Use this optional scanner only as a pre-check.
// accessibility/axe-precheck.spec.ts
import { expect, test } from '@playwright/test';
import AxeBuilder from '@axe-core/playwright';
test('page has no obvious axe violations', async ({ page }) => {
await page.goto('/checkout');
const results = await new AxeBuilder({ page }).withTags(['wcag2a', 'wcag2aa', 'wcag22aa']).analyze();
expect(results.violations).toEqual([]);
});
Run manual checks in this order.
Use only keyboard input.
Tab: Move to next interactive element.
Shift Tab: Move backward.
Enter: Activate links and buttons.
Space: Activate buttons, checkboxes, and menu options.
Arrow keys: Move inside menus, tabs, radios, sliders, and listboxes.
Escape: Close modals, menus, and popovers.
Look for these failures.
Use NVDA on Windows or VoiceOver on macOS.
NVDA quick checks:
NVDA plus T: Read page title.
H: Move by heading.
D: Move by landmark.
F: Move by form field.
B: Move by button.
Insert plus F7: List elements.
VoiceOver quick checks:
Control Option Right: Move next.
Control Option U: Rotor.
Control Option Space: Activate.
Use structured findings so engineers can fix quickly.
## Finding: Checkout coupon error is not announced
WCAG: 4.1.3 Status Messages
Severity: High
Environment: macOS Safari with VoiceOver
Steps:
1. Open checkout.
2. Enter expired coupon.
3. Activate Apply.
Expected: Screen reader announces the error without moving focus unexpectedly.
Actual: Error appears visually but is not announced.
Evidence: Screenshot and VoiceOver transcript.
Fix: Render error in an aria-live region or associate it with the field.
| Manual Area | WCAG Examples | What Scanner May Miss |
|---|---|---|
| Keyboard order | 2.4.3, 2.1.1 | Logical task flow |
| Focus visible | 2.4.7, 2.4.11 | Focus hidden by sticky UI |
| Screen reader names | 4.1.2 | Misleading accessible names |
| Status messages | 4.1.3 | Silent async errors |
| Reflow | 1.4.10 | Content loss at narrow width |
| Zoom | 1.4.4 | Overlap at 200 percent |
| Target size | 2.5.8 | Touch target usability |
| Consistent help | 3.2.6 | Support access across pages |
- name: Install QA Skills
run: npx @qaskills/cli add accessibility-manual-audit12 of 29 agents supported
Build AI agents that write, run, and fix tests. Playwright, LLM evals, and CI in one live cohort.
Use code AITESTER at checkout