W 2025 roku wejdzie w życie Europejski Akt o Dostępności (European Accessibility Act), którego celem jest ujednolicenie standardów dostępności w całej Unii Europejskiej. W Polsce wprowadzi obowiązek zapewnienia dostępności produktów i usług także w sektorze prywatnym. Firmy będą musiały dostosować strony internetowe i aplikacje mobilne do standardów WCAG 2.1 na poziomie AA.
Warto jednaj pamiętać, że zapewnienie dostępności cyfrowej to nie tylko spełnienie wymogów prawnych, ale także odpowiedzialność społeczna.
Moim zdaniem to dobry moment na poruszenie tematu dostępności. W tym artykule pokażę, jak w łatwy sposób można przeprowadzić testy dostępności przy użyciu narzędzia mabl. Skupię się na jego funkcjach w kontekście tworzenia bardziej inkluzywnego oprogramowania.
Zanim przejdę do szczegółowego opisu, przedstawię krótko inne rozwiązania do automatyzacji testów dostępności, które miałem okazję sprawdzić.
Chciałbym także podkreślić znaczenie testów manualnych w zakresie testowania – testy automatyczne zawsze powinny być traktowane jako pomocnicze i dodatkowe do testów manualnych.
Narzędzia do automatyzacji testów
Na przestrzeni mojej kariery zawodowej testowanie dostępności aplikacji było bardzo ważne. Z biegiem czasu zacząłem dostrzegać, jak istotne jest tworzenie rozwiązań, które są dostępne dla wszystkich użytkowników – niezależnie od ich ograniczeń czy urządzeń, z których korzystają. To właśnie przekonanie o wartości dostępności nadało kierunek mojej pracy i pozwoliło mi rozwijać kompetencje w tej dziedzinie.
Moje obowiązki obejmowały testowanie dostępności zarówno aplikacji mobilnych jak i webowych. W tym procesie istotne było zrozumienie, jak różne grupy użytkowników – na przykład osoby z niepełnosprawnościami wzrokowymi czy ruchowymi – korzystają z technologii. W swojej pracy wykorzystywałem zarówno narzędzia do manualnego testowania, jak i do automatyzacji, takie jak Robot Framework czy Playwright.
Robot Framework
W najbardziej przystępny sposób udało mi się automatycznie przeprowadzić testy dostępności przy pomocy bibliotek do Robot Framework (robot-axelibrary, robotframework-axelibrary). Używając zaledwie kilku linijek kodu, za pomocą keywordów (słów kluczowych) opisanych w dokumentacji byłem w stanie przeprowadzić testy dostępności strony internetowej.

Niestety, obie biblioteki miały poważną wadę, która wykluczała ich zastosowanie. Ich ostatnia aktualizacja pochodzi z 2022 roku, a w przypadku robotframework-axelibrary mamy informacje, że repozytorium na GitHub jest zarchiwizowane.

Python
Python oferuje narzędzia, takie jak selenium-axe-python, które umożliwiają integrację Selenium i z silnikiem Axe w celu testowania dostępności zgodnie ze standardami WCAG. Testy można łatwo dostosować do specyficznych potrzeb aplikacji, a wyniki zapisywać w raportach JSON. Choć wymaga znajomości programowania, Python zapewnia dużą elastyczność i możliwość integracji z narzędziami CI/CD.

Playwright
Dużym plusem Playwrighta jest to, że testowanie dostępności jest oficjalnie udokumentowane na stronie narzędzia oraz fakt, że w tym celu Playwright korzysta z bardzo dobrego silnika Axe. Dodatkowo, przy pomocy Playwright byłem w stanie w łatwy sposób uzyskać raport w postaci html, czego nie udało mi się za pomocą Pythona.

Python i Playwright oferują zaawansowane możliwości testowania dostępności, ale oba narzędzia wymagają znajomości programowania, co czyni je mniej przystępnymi.
Testowanie dostępności za pomocą mabl
Dostępność aplikacji internetowych i mobilnych staje się kluczowym elementem tworzenia nowoczesnego oprogramowania, szczególnie w kontekście zbliżających się regulacji prawnych.
Dlatego skupię się na narzędziu mabl, które okazało się interesującym wyborem do automatyzacji testów. Umożliwia ono nie tylko łatwe przeprowadzanie testów dostępności, ale również ich integrację z testami funkcjonalnymi, co przyczynia się do tworzenia bardziej inkluzywnych aplikacji.
Kilka słów o mabl
Mabl to narzędzie do automatyzacji testów funkcjonalnych działające w modelu SaaS. Umożliwia łatwe tworzenie i utrzymywanie testów bez potrzeby zaawansowanej wiedzy programistycznej. Dzięki intuicyjnemu interfejsowi, wsparciu uczenia maszynowego i automatycznej diagnostyce pozwala zespołom szybko wykrywać i naprawiać błędy. Platforma integruje się z popularnymi systemami CI/CD, oferując jednocześnie zaawansowane funkcje raportowania, co ułatwia efektywne monitorowanie jakości aplikacji na każdym etapie jej rozwoju.
Mabl umożliwia również testowanie dostępności aplikacji, wspierając zgodność produktów ze standardami WCAG (Web Content Accessibility Guidelines). WCAG to międzynarodowe wytyczne opracowane przez W3C, których celem jest zapewnienie dostępności treści internetowych dla wszystkich użytkowników, w tym osób z niepełnosprawnościami.
Automatyczne testy dostępności identyfikują potencjalne problemy, takie jak:
- nieodpowiednie kontrasty kolorów,
- brak opisów alternatywnych dla obrazów,
- inne bariery, które mogą wpływać na użytkowników z niepełnosprawnościami.
Warto wspomnieć, że mabl wykorzystuje technologie Playwright oraz silnik Axe Core, które umożliwiają przeprowadzanie dokładnych testów dostępności.

Axe Core to otwartoźródłowy silnik do automatycznego testowania dostępności interfejsów użytkownika opartych na HTML, takich jak strony internetowe i aplikacje webowe. Został opracowany przez firmę Deque Systems i jest szeroko stosowany w celu identyfikacji problemów z dostępnością.
Testy dostępności w mabl
Sposób na przeprowadzenie testów dostępności w mabl jest przystępny. Aby to zrobić, należy wykonać następujące kroki:
1. Tworzenie lub edycja testu:
- Rozpocznij nowy test lub otwórz istniejący w mabl trainer.
2. Nawigacja do odpowiedniego stanu aplikacji:
- Przejdź przez kroki testu, aby doprowadzić aplikację do stanu, który chcesz poddać testom dostępności.
3. Dodanie kroku sprawdzającego dostępność:
- Kliknij przycisk „Add step” w mabl trainer.
- Wybierz opcję „Accessibility check”.
4. Konfiguracja kroku sprawdzającego:
- Określ, czy chcesz przeprowadzić test dostępności na całej stronie, czy na konkretnym elemencie.
- Jeśli wybierasz konkretny element, wskaż go na stronie.
- Ustal poziom rygorystyczności testu, np. czy test ma zakończyć się niepowodzeniem w przypadku wykrycia naruszeń o określonej wadze.
5. Zapisanie i uruchomienie testu:
- Zapisz wprowadzone zmiany.
- Uruchom test, aby mabl przeprowadził analizę dostępności.
6. Analiza wyników:
- Po zakończeniu testu przejdź do raportu wyników.
- Przejrzyj wykryte naruszenia dostępności, ich szczegóły oraz propozycje naprawy.

Mabl trainer
Mabl oferuje także kompleksowe podejście do testowania dostępności, w którym łączy testy funkcjonalne, regresyjne i dostępności w jednym narzędziu. Dzięki temu możliwe jest identyfikowanie problemów z dostępnością w kontekście rzeczywistych scenariuszy użytkowania aplikacji, co zwiększa jakość oraz wartość testów.
Dodatkowo mabl umożliwia kompleksową kontrolę testów dostępności. Podczas ich konfigurowania dostępne są szczegółowe ustawienia, które pozwalają dostosować testy do specyficznych potrzeb aplikacji. Aby skorzystać z tych opcji, w mabl trainer, po dodaniu kroku „Accessibility check”, należy włączyć sekcję „Advanced settings”.
W zaawansowanych ustawieniach można:
- Włączać lub wyłączać konkretne reguły – pozwala to na pominięcie reguł, które nie mają zastosowania do testowanej aplikacji.
- Określać tagi – umożliwia to uruchamianie testów dla określonych grup reguł związanych z wybranymi aspektami dostępności.

Dzięki tym opcjom można precyzyjnie dostosować testy dostępności, koncentrując się na najistotniejszych dla danej aplikacji aspektach. Szczegółowe informacje na temat konfiguracji zaawansowanych ustawień testów dostępności w mabl można znaleźć w oficjalnej dokumentacji.

Standardy amerykańskie
Jak widzimy w tabeli dostępnych tagów, poza WCAG mabl umożliwia również sprawdzanie dostępności zgodnie ze standardami, które obowiązują w USA, czyli Section 508.
Section 508 to amerykańska ustawa, która wymaga, aby technologie informacyjne i komunikacyjne wykorzystywane przez agencje federalne były dostępne dla osób z niepełnosprawnościami. Dodatkowo możemy też sprawdzić stronę pod kątem najlepszych praktyk w zakresie dostępności.
Wykorzystanie mabl w praktyce
Sprawdźmy, jakie możliwości oferuje mabl w praktyce, jeśli chodzi o testowanie dostępności.
Do tego celu skorzystałem ze strony demonstracyjnej stworzonej przez mabl, która celowo zawiera uchybienia związane z dostępnością.

Przed przystąpieniem do testów dostępności w mabl, wykorzystałem narzędzie Lighthouse, które jest wbudowane w przeglądarkę Chrome. Lighthouse służy do audytowania aplikacji webowych, pozwalające na szybkie wykrycie problemów z dostępnością zgodnych z WCAG 2.1.
Analizę przeprowadziłem na stronie demonstracyjnej przygotowanej przez mabl. Lighthouse skutecznie zidentyfikowało problemy z kontrastem tekstu, wskazując ich lokalizację oraz oferując propozycję poprawek.

Teraz przyszedł czas na uruchomienie testów dostępności w mabl. Jeżeli mamy przygotowane kroki oraz dodaliśmy asercję dostępności, wystarczy uruchomić testy, klikając „Run Test”. Testy dostępności mogą być uruchamiane zarówno w chmurze, jak i lokalnie.
Raporty
Aby uzyskać szczegółowy raport dostępności z dokładnymi informacjami o wykrytych naruszeniach, zaleca się uruchomienie testów w chmurze na serwerach mabl. W tym celu w następnym kroku należy kliknąć „Cloud Run”, a następnie „Start”.
Testy uruchamiane w chmurze generują pełny raport, który zawiera szczegółowe informacje o problemach dostępności, ich lokalizacji oraz propozycjach naprawy. Jeśli zdecydujemy się na uruchomienie testów lokalnie, narzędzie wyświetli podsumowanie wykrytych naruszeń i błędów, ale szczegółowy raport z pełną analizą nie będzie dostępny. Lokalna opcja sprawdza się, gdy potrzebujemy szybkiej weryfikacji podstawowych aspektów dostępności.


Narzędzie bez problemu wykryło problem z kontrastem, a wyniki testu zostały przedstawione w przejrzysty sposób. Dodatkową zaletą jest to, że mabl dostarcza szczegółowe informacje na temat współczynnika kontrastu elementów na stronie, wskazując, jaki jest aktualny poziom kontrastu i jaki powinien być zgodnie ze standardami WCAG. Poprawność danych sprawdziłem przy pomocy narzędzia do weryfikacji kontrastu.

Możliwe jest ręczne sprawdzenie kontrastu polegające na wizualnym porównaniu elementów strony, takich jak tekst i tło, jednak metoda ta może być subiektywna i nie zawsze dokładna. Kontrast jest dobrym przykładem wykorzystania narzędzia, ponieważ jego prawidłowa ocena wymaga ścisłego przestrzegania standardów takich jak WCAG. W związku z tym lepszym rozwiązaniem jest wykorzystanie narzędzi automatyzujących ten proces.
Po wykonaniu testu uzyskujemy szczegółowy raport. Raporty dostępności są przystępne i łatwe do zrozumienia zarówno dla technicznych, jak i nietechnicznych członków zespołu. W mabl także mamy możliwość zapisania raportu do pliku pdf lub do formatu JSON.
Wykrywanie i naprawa błędów
Mabl oferuje również szczegółowe informacje na temat naprawy wykrytych problemów z dostępnością. Po kliknięciu w odnośnik „Help” zostajemy przekierowani na stronę dokumentacji narzędzia Axe od Deque University, gdzie możemy zapoznać się z wyjaśnieniami dotyczącymi istoty problemu oraz potencjalnych rozwiązań.
Dokumentacja zawiera praktyczne informacje o tym, dlaczego dany aspekt dostępności jest istotny i jakie trudności mogą napotykać osoby z niepełnosprawnościami. Dzięki temu testerzy i deweloperzy mogą lepiej zrozumieć skutki wykrytych problemów oraz skutecznie je naprawić, co przyczynia się do poprawy dostępności aplikacji dla wszystkich użytkowników. Strony od Axe stanowią solidną kopalnię wiedzy z zakresu dostępności.

Oczywiście mabl potrafi wykryć znacznie więcej naruszeń dotyczących dostępności, takich jak:
- Niewystarczający kontrast kolorów: mabl sprawdza, czy kolory użyte w aplikacji spełniają wymogi WCAG, zapewniając dobrą czytelność treści dla użytkowników ze słabym wzrokiem.
- Semantyka HTML i struktura nagłówków: mabl analizuje strukturę nagłówków (h1, h2, h3 itd.) na stronie, aby upewnić się, że są one stosowane poprawnie i logicznie. Na przykład brak h1 lub niewłaściwa hierarchia nagłówków może stanowić problem dostępności. Sprawdza również, czy elementy HTML są odpowiednio semantyczne – np. czy przyciski używają button, a linki są zdefiniowane jako a.
- Brak alternatywnych opisów dla obrazów: Testy automatyczne identyfikują brakujące opisy alternatywne, co jest kluczowe dla użytkowników korzystających z czytników ekranu.
- Problemy z nawigacją klawiaturą: mabl umożliwia sprawdzenie, czy wszystkie elementy na stronie są dostępne przy użyciu klawiatury, co jest istotne dla użytkowników, którzy nie mogą korzystać z myszy.
- Brak ról ARIA i etykiet: Narzędzie analizuje strukturę strony, aby upewnić się, że elementy interfejsu mają przypisane odpowiednie role ARIA, co ułatwia nawigację osobom z niepełnosprawnościami.

Mabl a przeglądarki i urządzenia mobilne
Dużym plusem mabl jest możliwość testowania dostępności na różnych przeglądarkach jednocześnie oraz weryfikacji aplikacji webowej na urządzeniach mobilnych, zarówno z systemem Android, jak i iOS (iPhone).
W kontekście urządzeń mobilnych szczególnie ważne jest uwzględnienie różnorodności rozmiarów ekranów, proporcji wyświetlaczy oraz rozdzielczości. Na przykład problemy dostępności, takie jak zbyt mały kontrast, mogą być bardziej odczuwalne na mniejszych ekranach, gdzie elementy są trudniejsze do zauważenia. Również interaktywne komponenty, takie jak przyciski czy formularze, muszą być odpowiednio skalowane, aby zapewnić ich dostępność przy użyciu dotyku.
Dzięki funkcjom mabl możemy testować aplikacje w różnych scenariuszach, uwzględniając specyficzne cechy urządzeń mobilnych, takie jak:
- Rozdzielczość ekranu – testowanie w wysokiej i niskiej rozdzielczości, aby upewnić się, że elementy interfejsu są czytelne.
- Orientacja ekranu – sprawdzanie zgodności w trybach pionowym i poziomym.

Dzięki takiemu podejściu możemy zapewnić, że aplikacja będzie dostępna i wygodna w użytkowaniu dla wszystkich, niezależnie od rodzaju urządzenia.
Accessibility Dashboard
Mabl oferuje także zakładkę Accessibility Dashboard, która umożliwia użytkownikom monitorowanie dostępności aplikacji w jednym miejscu. Dashboard ten pozwala śledzić trendy dostępności, identyfikować najpoważniejsze problemy oraz grupować podobne naruszenia, co znacznie upraszcza zarządzanie dostępnością.

Sztuczna Inteligencja w mabl
Na koniec chciałbym poruszyć wątek, który od jakiegoś czasu cieszy się dużą popularnością – zastosowanie sztucznej inteligencji w testowaniu. Mabl wykorzystuje AI w różnych aspektach automatyzacji testów jakości oprogramowania, oferując obecnie aż 8 funkcji wspieranych przez sztuczną inteligencję. W tym miejscu przedstawię kilka z nich, które szczególnie często wykorzystywałem, zwłaszcza w kontekście testowania dostępności.
Jedną z najbardziej przydatnych funkcji jest automatyczne naprawianie testów (AI auto-healing), które sprawia, że testy są bardziej niezawodne i odporne na zmiany w aplikacji tj. modyfikacje interfejsu czy układu elementów. Dzięki niej testerzy mogą zaoszczędzić czas, eliminując konieczność ręcznego aktualizowania testów po każdej zmianie w aplikacji.

Mabl także w kontekście testowania dostępności stara się wykorzystać potencjał sztucznej inteligencji. Na oficjalnej stronie można znaleźć informacje o wykorzystaniu AI w opisanym wyżej Accessibility Dashboard.

Mabl bardzo szeroko implementuje w swoje rozwiązania technologie oparte na sztucznej inteligencji, które nie tylko usprawniają proces wykrywania problemów, ale także w przyszłości będą odgrywały coraz większą rolę w proponowaniu konkretnych rozwiązań dla skomplikowanych zagadnień dostępności.
Sztuczna inteligencja w mabl wspiera użytkowników, dostarczając im informacji nie tylko o samych problemach, ale także o ich przyczynach – co jest widoczne w najnowszych wersjach narzędzia.

Wierzę, że w przyszłości AI odegra kluczową rolę w testowaniu dostępności, umożliwiając automatyczne wykrywanie i proponowanie rozwiązań dla złożonych problemów, co zwiększy efektywność testów dostępności przeprowadzanych przy użyciu mabl.
Podsumowanie
Mabl okazał się ciekawym rozwiązaniem ze względu na łatwość obsługi, podejście low-code oraz możliwość integracji z popularnymi narzędziami CI/CD. Dzięki użyciu Axe Core pod maską, narzędzie zapewnia dokładne testy dostępności bez potrzeby posiadania zaawansowanej wiedzy programistycznej.
Mabl oferuje 14-dniowy okres próbny, dzięki czemu można samodzielnie sprawdzić jego możliwości przed podjęciem decyzji o wdrożeniu.
Narzędzie to nie tylko wspiera testy dostępności, ale integruje je z testami funkcjonalnymi, co sprawia, że jest to kompleksowe rozwiązanie dla zespołów dbających o jakość aplikacji i zgodność ze standardami WCAG.

***
Jeśli ciekawi Cię temat dostępności, zajrzyj koniecznie również do innych artykułów naszych ekspertów.
Zostaw komentarz