Инструменти

Lighthouse

Инструментът на Google с отворен код за одит на качеството на уебсайтове, вграден в Chrome DevTools и API-то на PageSpeed Insights. Одитът за достъпност обвива набора от правила на axe-core. Резултатите са от 0 до 100, но резултат 100 не означава съответствие с WCAG.

Lighthouse е инструментът на Google с отворен код за автоматизиран одит на качеството на уебсайтове. Вграден директно в Chrome DevTools, той изпълнява четири одита — производителност, достъпност, добри практики и SEO — и генерира резултат от 0 до 100 за всяка категория. Одитът за достъпност по-специално представлява подмножество от набора от правила на axe-core, пакетирано в отчетния формат на Lighthouse.

Какво реално измерва Lighthouse Accessibility

Категорията Accessibility в Lighthouse изпълнява подбрано подмножество от правилата на axe-core — обикновено 40–50 правила, избрани защото са детерминирани, бързи за изпълнение и не генерират фалшиви положителни резултати. Правилата обхващат обичайните области:

  • Валидност на ARIA атрибутите.
  • Цветови контраст.
  • Наличие на етикети на формуляри.
  • Наличие на алтернативен текст за изображения.
  • Атрибут за език на <html>.
  • Структура на заглавията (някои проверки).
  • Различимост на връзките (връзката има достъпно наименование).
  • Наличие на индикатор за фокус.

Всяко правило допринася за резултата от 0 до 100 чрез тегловна система, която Google публикува в документацията на Lighthouse. Критичните правила (липса на достъпно наименование на контрол, липсващ алтернативен текст на информативно изображение) имат голяма тежест; консултативните — по-малка.

Ключовото погрешно разбиране

Резултат 100 в Lighthouse Accessibility не означава, че сайтът е в съответствие с WCAG. Lighthouse изпълнява автоматично-откривемото подмножество от проверките по WCAG. Това подмножество е малка част от пълния набор от правила на WCAG.

По-конкретно, Lighthouse не оценява:

  • Качеството на алтернативния текст (само неговото наличие).
  • Дали редът на фокуса съответства на визуалния ред.
  • Дали интерактивните компоненти изпълняват пълния си клавишен договор.
  • Дали ARIA live региони обявяват промените правилно.
  • Реалното поведение на екранния четец.
  • Четивност на съдържанието и когнитивно натоварване.

Екип, публикувал сайт с Lighthouse Accessibility = 100, е преминал най-ниската летва; той не е свършил работата.

При все това неуспехът да се премине тази летва е реален проблем. Резултат под 100 в Lighthouse Accessibility означава, че на страницата съществуват автоматично-откривими грешки — а те са най-евтините и лесни за отстраняване.

Как да се използва Lighthouse оперативно

Lighthouse се вписва естествено в три работни процеса:

  1. Бърза проверка в DevTools. Отваря се DevTools → панел Lighthouse → изпълнява се одит. Полезно за еднократни проверки на страница по време на разработка.
  2. Порта в CI. lighthouse-ci изпълнява Lighthouse при всеки PR, отхвърля при регресии и съхранява история. CI конфигурацията на disabilityworld.org използва именно този подход: всяко публикуване изпълнява Lighthouse спрямо представителни страници и трябва да достигне 100 в Performance, Accessibility, Best Practices и SEO.
  3. Мониторинг с реални потребители. API-то на PageSpeed Insights изпълнява Lighthouse при поискване спрямо произволен публичен URL адрес, а Chrome User Experience Report (CrUX) предоставя метрики от реални потребители за същите измерения.

Целта от 100-100-100-100

За статично публикувани сайтове с дисциплинирано боравене с CSS, шрифтове и изображения, постигането на резултат 100 в Lighthouse и в четирите категории е постижимо и си заслужава. Комбинацията сигнализира:

  • Performance 100 — бързо при бавни мрежи и устройства.
  • Accessibility 100 — преминато автоматично-откривемото ниво.
  • Best Practices 100 — съвременен HTTP, без грешки в конзолата, стабилни пропорции на изображенията.
  • SEO 100 — обхождаем, с мета описание, семантичен.

Този сайт (disabilityworld.org) се стреми към тези резултати при всяка публикувана статия и ги проверява в CI. Резултатът 100 за Accessibility е минималното изискване; ръчната работа по достъпността, която не е обхваната от Lighthouse, е там, където живее реалната програма за достъпност.