Dostępność aplikacji mobilnych i internetowych oznacza umożliwienie wszystkim użytkownikom, zwłaszcza osobom z niepełnosprawnościami, odczuwania, rozumienia, poznania, a przede wszystkim - pełnego korzystania z aplikacji.
Testowanie dostępności jest koniecznym elementem podczas cyklu wytwarzania oprogramowania.
Do kogo kierowane są dostępne aplikacje?
Niepełnosprawność może być zarówno trwała, jak i chwilowa, na przykład gdy potencjalny użytkownik aplikacji złamie rękę lub zakropi oczy, w wyniku czego nie będzie w stanie korzystać z aplikacji w standardowej formie.
Czy takie sytuacje muszą oznaczać wykluczenie z cyfrowego świata? Oczywiście, że nie. Społeczna świadomość i wrażliwość na potrzeby innych osób rośnie, również wśród programistów i testerów, a to od nich zależy, czy współczesny świat wirtualny sprosta najnowszym wymaganiom jakościowym.
Na świecie jest ponad miliard niepełnosprawnych osób, które zapewne codziennie korzystają z różnych aplikacji. Warto o nich pamiętać podczas opracowywania nowego oprogramowania.
Jak sprawdzić czy aplikacja jest dostępna dostępna cyfrowo?
Istnieje wiele metod testowania dostępności, a ich dodatkowa automatyzacja to świetny sposób na rozpoczęcie pracy nad aplikacją i wniesienie nowej wartości do istniejących zestawów testów. W procesie rozwoju oprogramowania powinniśmy zawsze koncentrować się na wyniku i celu implementacji dostępnych rozwiązań - po co i dla kogo je wdrażamy.
Co to znaczy dostosowywać zawartość strony internetowej do określonych potrzeb?
Podstawową zasadą jest dbałość o pisanie dobrej jakości kodu HTML, kompatybilnego z urządzeniami i aplikacjami wspierającymi np. osoby niewidome w używaniu komputerów i smartfonów. Należy zadbać o odpowiednią strukturę elementów (H1,H2,H3 itd.) oraz wskazanie języka strony.
Kod HTML powinien być kompatybilny z ARIA Authoring Practices Guide – Patterns.
Nawet przy wykorzystaniu standardowych elementów frameworków, takich jak: Bootstrap, Angular czy React, zaleca się ostrożność i pisanie własnych testów dostępności, aby upewnić się, że żaden element nie został pominięty.
Podstawowe elementy interfejsu użytkownika
Tworząc aplikacje odpowiadające unikalnym potrzebom wszystkich użytkowników, należy zwrócić szczególną uwagę na wdrożenie i przetestowanie elementów interfejsu użytkownika, takich jak:
- Kontrast kolorystyczny. Osoby dotknięte wadą wzroku uniemożliwiającą prawidłowe postrzeganie kolorów, mogą zostać wykluczone z grona odbiorców aplikacji, jeśli nie będą w stanie prawidłowo rozróżnić poszczególnych elementów. Można to zweryfikować za pomocą specjalnych filtrów ekranowych (np. Przy pomocy wtyczki do przeglądarki Chrome “Colorblindly”), które imitują określone dysfunkcje.
- Ikony - Ich wielkość i prostota są szczególnie ważne dla osób z niepełnosprawnością ruchową lub trudnościami poznawczymi.
- Możliwość zmiany rozdzielczości wyświetlanych elementów (przynajmniej do 200%)
- Dostęp do elementów strony internetowej i nawigacji bez użycia myszki
- Użytkownik powinien mieć możliwość pełnego dostępu do witryny internetowej, takiego jak: linki, przyciski, zdjęcia, pola wyboru, wyskakujące okienka i listy rozwijane. Wszystkie elementy sterujące powinny być w pełni dostępne i obsługiwane za pomocą klawiatury.
- Osoby niewidome korzystają z komputera przy pomocy klawiatury oraz technologii asystujących – czytników ekranu. Każda osoba niewidoma, rozpoczynająca naukę obsługi komputera, uczy się rozkładu klawiszy i pisania przy pomocy dziesięciu palców.
- Łatwość obsługi i instalacji aplikacji
- Kontrola głośności
- Przystosowanie do asystentów mowy, m.in. na smartfonach: VoiceOver (iOS) lub TalkBack (Android), a także możliwość obsługi aplikacji mobilnej za pomocą prostych gestów
- Możliwość wykorzystania audiodeskrypcji
- Jasną informację zwrotną dla użytkownika.
Dobrą podpowiedzią do tego jak powinna być zbudowana strona, która spełnia podstawowe kryteria dostępności WCAG (Web Content Accessibility Guidelines (WCAG) 2.0) może być https://www.w3.org/WAI/demos/bad/before/home.html - aplikacja demo, która służy prezentacji dostępnej i niedostępnej wersji tej samej strony www.
Można posiłkować się zawartymi tam adnotacjami i wskazówkami, aby nie popełniać tych samych błędów we własnej pracy.
Jaka jest rola testera dostępności aplikacji?
W praktyce testowanie dostępności oznacza sprawdzenie wszystkich powyższych wymagań i zwiększenie liczby testów użyteczności przed oficjalnym wydaniem oprogramowania. Ponieważ dostępność jest obecnie standardową funkcją interfejsu użytkownika – nie należy jej pomijać także w pokryciu testami automatycznymi. Nie chodzi jednak o zaspokojenie subiektywnych odczuć estetycznych dotyczących danej aplikacji, ale o przeprowadzenie określonych zestawów testów, przeznaczonych dla określonych grup użytkowników. Spektrum możliwości testera jest nieograniczone – liczy się kreatywność - jednakże warto opierać się na sprawdzonych źródłach i wytycznych dotyczących standardów dostępności np. WCAG (https://www.w3.org/Translations/WCAG21-pl)
Narzędzia wspierające testowanie dostępności
Wiele narzędzi i usług może pomóc programistom i testerom w testowaniu dostępności lub wykonywaniu podstawowych testów dymnych w tym obszarze, weryfikując kod HTML. Część z tych narzędzi jest bezpłatna i stworzona przez pasjonatów, którzy chcą poprawić dostępność Internetu dla każdego. Najbardziej znane to:
- Chrome Dev Tools - opcje Accessibility (dostępność) - zapewnia zarówno dostęp do audytu strony, jak i szczegółowe informacje o tym, co należy poprawić, aby zwiększyć poziom dostępności
- WAVE - darmowe narzędzie w postaci wtyczki do przeglądarki, pozwalające na automatyczne sprawdzenie kontrastu na stronie, wykrycie braku tekstów alternatywnych dla obrazów i zdjęć oraz braku poprawnych nagłówków.
- JAWS - system umożliwiający pracę na komputerze przy maksymalnym wsparciu mową syntetyczną i pismem Braille'a. Program ten nie tylko odczytuje ważne informacje z ekranu komputera, ale także potrafi opisywać obiekty graficzne, takie jak wykresy w arkuszach kalkulacyjnych, obramowania i tabele. Licencja na Jaws jest płatna, nie ma wersji darmowej.
- Jednym z najpopularniejszych narzędzi do testowania backendu aplikacji jest AATT (Automated Accessibility Testing Tool) stworzony przez firmę PayPal. Umożliwia wykorzystanie API odpowiedniego dla aplikacji spełniających wymagania dostępności oraz personalizację kodu HTML. Jest dostępny na GitHubie.
Co więcej, Google (dostawca Accessibility Developer Tools – dodatek do Chrome Developer Tools) czy Apple (https://www.apple.com/accessibility/iphone/vision/) prowadzą edukacyjne serwisy z gotowymi rozwiązaniami dla programistów oraz proste narzędzia testowe, które pozwalają na poszerzenie wiedzy i możliwości testowania dostępności aplikacji.
Oczywiście, jak w przypadku każdego rodzaju testów, nic nie zastąpi kreatywności testera.







