Technologie

VoiceOver

Wbudowany czytnik ekranu Apple, dostępny na każdym urządzeniu z macOS i iOS. Na iOS VoiceOver jest przyjętym referencyjnym czytnikiem ekranu przy testowaniu dostępności mobilnej sieci.

VoiceOver to wbudowany czytnik ekranu Apple, dostarczany bezpłatnie z każdym Makiem, iPhonem, iPadem, Apple Watch i Apple TV. Na iOS szczególnie VoiceOver jest przyjętym referencyjnym czytnikiem ekranu do każdego znaczącego testowania dostępności mobilnej sieci.

Na macOS

VoiceOver na macOS uruchamia się kombinacją Cmd+F5 (lub przez przytrzymanie przycisku Touch ID na obsługiwanych klawiaturach). Ma własny klawisz modyfikatora — klawisz VoiceOver (VO), zazwyczaj Caps Lock lub Control+Option — poprzedzający większość skrótów specyficznych dla VoiceOver. Po aktywacji VoiceOver ogłasza sfokusowany element, jego rolę i stan.

Ogólnie VoiceOver na macOS zachowuje się podobnie do JAWS lub NVDA na Windows: nawigacja klawiaturowa według landmarków, nagłówków i pól formularzy; ogłaszanie ról, stanów i wartości ARIA; obsługa regionów live.

Na poziomie szczegółowym istnieją osobliwości zaskakujące programistów przyzwyczajonych do testowania na Windows:

  • Rotor VoiceOver to odpowiednik trybu interakcji JAWS — wirtualnego kursora / trybu formularzy. VO+U otwiera rotor (stylizowany pierścień) wymieniający tryby nawigacji — nagłówki, linki, kontrolki formularzy, landmarki, punkty internetowe. Użytkownik wybiera tryb i przechodzi przez elementy danego rodzaju.
  • <button> vs role="button" — VoiceOver historycznie ogłaszał je nieco inaczej; nowoczesna przeglądarka Safari zawęziła, ale nie wyeliminowała całkowicie tej różnicy.
  • Niestandardowe obramowania fokusa. VoiceOver na macOS rysuje własny ciemny kontur wokół sfokusowanego elementu. Jeśli strona też rysuje obramowanie fokusa, oba są widoczne jednocześnie i mogą ze sobą kolidować wizualnie.

Na iOS — ważniejsza platforma

Na iOS VoiceOver uruchamia się przez skrót dostępności (trzykrotne naciśnięcie bocznego przycisku lub przez Ustawienia). Model interakcji jest oparty na gestach i stanowi operacyjny standard dla mobilnej dostępności:

  • Przesunięcie jednym palcem w prawo — przejście do następnego elementu.
  • Przesunięcie jednym palcem w lewo — poprzedni element.
  • Dwukrotne dotknięcie jednym palcem — aktywacja sfokusowanego elementu.
  • Przesunięcie trzema palcami w górę/dół — przewijanie ekranu.
  • Ściśnięcie dwoma palcami — wyjście i ponowne wejście do elementów z podstrukturą.
  • Rotor VoiceOver (obrót dwoma palcami na ekranie dotykowym) — ta sama koncepcja co na macOS; nawigacja według landmarków, nagłówków itp.

Te gesty to de facto słownictwo obsługi czytnika ekranu na urządzeniu mobilnym. Każda aplikacja internetowa lub strona, która je narusza — przez przechwytywanie zdarzeń dotykowych, pułapkowanie fokusa lub tworzenie elementów niemożliwych do zamknięcia — to jednoznaczny błąd mobilnej dostępności.

Jak wygląda testowanie VoiceOver na iOS

Trzy wzorce testowania ujawniają większość błędów VoiceOver na iOS:

  1. Przejście przez cały ekran przesunięciami jednym palcem. Kolejność tabulacji powinna odpowiadać kolejności wizualnej. Każdy element interaktywny powinien ogłaszać swoją rolę.
  2. Otwarcie rotora i sprawdzenie list nagłówków i landmarków. Brakujące landmarki lub pominięte poziomy nagłówków są natychmiast widoczne.
  3. Wywołanie każdej dynamicznej zmiany (przesunięcie karuzeli, rozwinięcie/zwinięcie, wysłanie formularza). Sprawdzenie, czy zmiana jest ogłaszana przez odpowiedni region aria-live, a nie przez cichą mutację DOM, której użytkownik nigdy nie słyszy.

VoiceOver na iOS jest też referencyjnym narzędziem Apple dla natywnych aplikacji iOS; te same umiejętności testowania stosują się do sieci i aplikacji natywnych w ekosystemie Apple.