Testowanie dostępności przy wsparciu AI

Testowanie dostępności przy wsparciu AI
Czy weryfikacja dostępności jest lepsza, gdy używamy technologii AI? Sprawdzamy.

Jak zapewne część z Was wie, Michał Buczek i Radek Smilgin intensywnie pracują nad automatyzacją testów dostępności. Wyniki swoich prac prezentują podczas konferencji oraz w publikacjach. Próbkę tego możecie znaleźć tutaj.

Naturalnym kolejnym etapem w prowadzeniu badań było sprawdzenie w jakim stopniu testy automatyczne są możliwe do przeprowadzenia przy wsparciu rozwiązań AI oraz zestawienie tego z wynikami dla „zwykłych” wtyczek. 

Na warsztat wzięto następujące rozwiązania:

  • bibliotekę axe-core wraz z Playwrightem
  • bibliotekę axe-core wraz z Playwrightem spięte z agentem Claude przy pomocy MCP a11y-mcp.

Jak wygląda zestawienie dwóch podstawowych elementów, czyli raportowania i pokrycia dla obu rozwiązań, prezentujemy poniżej. 

Raportowanie

Pierwszym ważnym elementem jest forma raportów. W przypadku narzędzi kodowych dostajemy domyślnie na zwrotce raport w pliku json. Dla rozwiązań AI raport często będzie miał formę już gotowego dokumentu. Jest to zdecydowanie ułatwienie dla osób niekodujących i managerów. Oprócz samego formatowania w raporcie dostarczonym przez Claude (na grafice po prawej stronie) widzimy podsumowanie najważniejszych informacji z przeprowadzenia testów. 

axe-core-a11y-mcp-claude.png

Pokrycie

Drugim ważnym czynnikiem w prowadzeniu testów będzie ich liczba. Widać, że AI, korzystając z tej samej biblioteki, jest w stanie wykonać więcej sprawdzeń. Jest to:

  • 62 dla axe-core
  • 75 dla axe-core, którego wspomaga Claude. 

Z czego wynika różnica? Przykładowo, axe-core jest w stanie sprawdzić obecność kodu aria i poprawnego użycia składni, ale to Claude może sprawdzić jakość opisów w kodzie, np. czy opis języka strony zawarty w HTML-u jest adekwatny do jej zawartości. Innym przykładem jest możliwość użycia axe-core do sprawdzenia kontrastów opisanych w kodzie, jednak jeśli mamy tekst na obrazku, to tylko człowiek lub AI oceni kontrast.

axe-core-a11y-mcp-claude-kontrast.png

Podsumowanie wyników

Jak widać, AI może poprawić jakość testów dostępności. Ciągle nie jest to jednak wystarczające w kontekście chociażby ustawy, która nakłada na podmioty państwowe i komercyjne konieczność spełnienia reguł WCAG. Nakładając ogólne pokrycie uzyskane przez poszczególne rozwiązania, możemy je skonfrontować z wynikami badań odnośnie uzyskania pokrycia dla testów prowadzonych przez testerów i wygląda to następująco:

  • axe-core uzyskuje do 10% pokrycia reguł dostępności,
  • axe-core wspierane przez AI dochodzi nawet do 20% pokrycia reguł dostępności,
  • doświadczony tester dostępności uzyskuje do 80% pokrycia reguł dostępności – oczywiście w swojej pracy może posługiwać się powyższymi narzędziami, ale musi i tak ręcznie weryfikować poprawność sprawdzeń oraz adekwatność raportów defektów,
  • do 100% pokrycia zbliżymy się w prowadzeniu testów przez testera dostępności, który zweryfikuje większość reguł WCAG, wraz z osobą z niepełnosprawnością wzrokową, która oceni „adekwatność” wdrożonego rozwiązania dostępnościowego do swoich potrzeb. Dodatkowo może ona sprawdzić wszystko to, co nie jest opisane regułami WCAG, a może być albo przeszkodą, albo utrudnieniem w posługiwaniu się oprogramowaniem. 

axe-core-a11y-mcp-claude-pokrycie.png

Konstatując, dostępność rozwiązań oraz sprawdzenie zgodności oprogramowania z Ustawą o dostępności trzeba testować ciągle przy pomocy człowieka. AI w tym zakresie stanowi większe wsparcie w testach niż zwykłe (klasyczne) narzędzie dostępności. W niektórych przypadkach, szczególnie w obszarach weryfikacji regresji dostępności, może stać się ono wystarczającym rozwiązaniem do monitorowania. 

Co według Ciebie daje dziś większe poczucie bezpieczeństwa jakościowego?
Co według Ciebie daje dziś większe poczucie bezpieczeństwa jakościowego?
0 %
Automatyczne testy dostępności
0 %
Automaty + AI
100 %
Doświadczony tester
0 %
Tester + użytkownik z niepełnosprawnością
Łącznie głosów: 1

To powinno Cię zainteresować