Коротка відповідь
Аудит поєднує автоматизацію й ручні задачі. Виберіть маршрути та стани; перевірте клавіатуру, names, порядок, zoom/reflow, contrast, форми й updates. Оцінка інструмента чи початковий огляд не доводять conformance. Звітуйте scope, environment та межі.
Пріоритезуйте вплив: неможливість подати форму чи вийти з dialog відрізняється від декоративного label. Кожне finding відтворюється, має repair і retest. Тут метод, не заява про повний audit продукту.
Практичні кроки реалізації
Виберіть задачі й стани
Додайте landing, navigation, details, form, modal та error/empty. Врахуйте вузьке й мови. Запишіть browser, OS, assistive technology та viewport. Лише початкова сторінка пропускає invalid-submit чи overlay.
Перевірте без pointer
Виконайте задачу Tab, Shift+Tab, Enter, Space й widget-keys. Перевірте focus, order, controls, dismissal і restore. Досяжність елементів не достатня: задачу треба завершити й зрозуміти.
Перевірте семантику й показ
Tree і screen reader перевіряють landmarks, headings, names, roles й announcements. Перевірте zoom/reflow, не масштаб screenshot. Contrast має фактичний background. Опис Native Color Picker обмежує checker двома кольорами; він не перевіряє шрифти, фони чи всю доступність.
Перетворіть findings на перевірки
Запишіть кроки, expected, barrier, task і докази. Criterion лише за підтвердження. Спільний компонент виправляє одну повторну причину. Після repair перевірте цілу задачу й детерміновані regressions без заміни ручного огляду.
Приклад реалізації
Tree-assertion захищає структуру. Playwright очікує form і button. Це вузька перевірка, не доказ клавіатури, contrast чи screen reader.
import { test, expect } from "@playwright/test";
test("contact form exposes its main controls", async ({ page }) => {
await page.goto("/contact");
await expect(page.getByRole("form", { name: "Contact" })).toMatchAriaSnapshot(`
- form "Contact":
- textbox "Email"
- textbox "Message"
- button "Send message"
`);
});
Узгодьте snapshot із контрактом, не всіма wrappers. Додайте submit і error-recovery та ручні announcements і focus. Версії мають відповідати середовищу.
Компроміси та альтернативи
Tools швидко повторюють частину правил; ручні задачі знаходять сенс і поведінку. Повна conformance потребує стандарту й методики. Початковий check — пошук роботи, не сертифікат. Залучайте користувачів із disabilities за можливості.
Поширені помилки
- Score як повний audit.
- Лише initial-state.
- Focusability як завершення.
- Contrast із вгаданим background.
- Закриття без retest.
Контрольний список перед випуском
- Scope і environment описано.
- Є error і dynamic.
- Keyboard, semantics, zoom, contrast перевірено.
- Findings відтворюються.
- Shared-fixes звірено.
- Claims у межах scope.
Поширені запитання
Чи tree замінює screen reader?
Ні. Він дає структуру, не timing, announcements і поведінку technology.
Чи всі defects блокують release?
Використовуйте severity й вимоги, не ховайте blocking за average. Чесно запишіть limits і пріоритезуйте основні задачі.
Висновок
Перевіряйте цілі задачі, відтворюйте barriers й repair. Поєднайте автоматичне й ручне, точно вкажіть доведене.
Первинні джерела
Пов’язані посібники та приклади
Потрібно реалізувати це у вашому продукті?
Пов’язана реалізація інтерфейсу, логіки застосунку, API та шару даних.