Narzędzia

Lighthouse

Otwartoźródłowe narzędzie Google do audytu jakości stron internetowych, wbudowane w Chrome DevTools i API PageSpeed Insights. Audyt dostępności oparty jest na zestawie reguł axe-core. Wynik 0–100; wynik 100 nie oznacza zgodności z WCAG.

Lighthouse to otwartoźródłowe narzędzie Google do automatycznego audytu jakości stron internetowych. Wbudowane bezpośrednio w Chrome DevTools, przeprowadza cztery audyty — Performance, Accessibility, Best Practices i SEO — i dla każdej kategorii generuje wynik od 0 do 100. Audyt dostępności jest podzbiorem zestawu reguł axe-core, spakowanym w format raportowania Lighthouse.

Co rzeczywiście mierzy audyt dostępności w Lighthouse

Kategoria Accessibility w Lighthouse uruchamia wyselekcjonowany podzbiór reguł axe-core — zazwyczaj 40–50 reguł, wybranych ze względu na ich deterministyczny charakter, szybkość wykonania i zerową liczbę fałszywych alarmów. Reguły obejmują typowy zakres:

  • Poprawność atrybutów ARIA.
  • Kontrast kolorów.
  • Obecność etykiet formularzy.
  • Obecność tekstu alternatywnego obrazów.
  • Atrybut języka na elemencie <html>.
  • Struktura nagłówków (wybrane sprawdzenia).
  • Rozróżnialność łączy (łącze ma dostępną nazwę).
  • Istnienie wskaźnika fokusa.

Każda reguła wpływa na wynik 0–100 zgodnie z wagami, które Google publikuje w dokumentacji Lighthouse. Reguły krytyczne (brak dostępnej nazwy kontrolki, brak tekstu alternatywnego na obrazie informacyjnym) mają dużą wagę; doradcze — mniejszą.

Kluczowe nieporozumienie

Wynik Lighthouse Accessibility równy 100 nie oznacza zgodności strony z WCAG. Lighthouse wykonuje wyłącznie automatycznie wykrywalne sprawdzenia WCAG. Ten podzbiór stanowi ułamek pełnego zestawu reguł WCAG.

W szczególności Lighthouse nie ocenia:

  • Jakości tekstu alternatywnego (jedynie jego obecności).
  • Czy kolejność fokusa odpowiada kolejności wizualnej.
  • Czy widgety interaktywne implementują pełną konwencję klawiaturową.
  • Czy regiony live ARIA poprawnie ogłaszają zmiany.
  • Rzeczywistego zachowania czytników ekranu.
  • Czytelności treści i obciążenia kognitywnego.

Zespół, który wdraża stronę z wynikiem Lighthouse Accessibility = 100, przekroczył minimalny próg — nie wykonał pełnej pracy.

Jednak niespełnienie tego progu jest realnym problemem. Wynik Lighthouse Accessibility poniżej 100 oznacza, że na stronie istnieją automatycznie wykrywalne błędy — a są to najtańsze i najłatwiejsze do naprawienia problemy.

Jak operacyjnie korzystać z Lighthouse

Lighthouse naturalnie wpisuje się w trzy scenariusze pracy:

  1. Doraźne sprawdzenie w DevTools. Należy otworzyć DevTools → panel Lighthouse → uruchomić audyt. Przydatne do jednorazowych sprawdzeń strony podczas prac programistycznych.
  2. Brama CI. lighthouse-ci uruchamia Lighthouse przy każdym PR, blokuje przy regresji i przechowuje historię wyników. CI witryny disabilityworld.org stosuje ten wzorzec: każdy push uruchamia Lighthouse na reprezentatywnych stronach i musi osiągnąć 100 we wszystkich czterech kategoriach.
  3. Monitorowanie użytkowników rzeczywistych. API PageSpeed Insights uruchamia Lighthouse na żądanie dla dowolnego publicznego adresu URL, a Chrome User Experience Report (CrUX) raportuje metryki rzeczywistych użytkowników w tych samych wymiarach.

Cel czterech wyników po 100

Dla statycznie publikowanych witryn z dyscyplinowaną obsługą CSS, czcionek i obrazów osiągnięcie wyników 100 we wszystkich czterech kategoriach Lighthouse jest możliwe i warte starań. Taka kombinacja sygnalizuje:

  • Performance 100 — szybkość w wolnych sieciach i na słabszych urządzeniach.
  • Accessibility 100 — spełnienie automatycznie weryfikowalnego minimum.
  • Best Practices 100 — nowoczesny protokół HTTP, brak błędów konsoli, stabilne proporcje obrazów.
  • SEO 100 — indeksowalność, opisy meta, semantyka.

Witryna disabilityworld.org dąży do osiągnięcia tego minimum na każdym opublikowanym artykule i weryfikuje je w CI. Wynik Accessibility 100 to punkt wyjścia; ręczna praca nad dostępnością — ta, której Lighthouse nie obejmuje — stanowi serce rzeczywistego programu dostępności.