Tecnologia

VoiceOver

Lo screen reader integrato di Apple, incluso in ogni dispositivo macOS e iOS. Su iOS, VoiceOver è lo screen reader di riferimento assunto per il testing dell'accessibilità web su dispositivi mobili.

VoiceOver è lo screen reader integrato di Apple, incluso in ogni Mac, iPhone, iPad, Apple Watch e Apple TV senza costi aggiuntivi. Su iOS in particolare, VoiceOver è lo screen reader di riferimento assunto per qualsiasi testing significativo dell’accessibilità web su dispositivi mobili.

Su macOS

VoiceOver su macOS si attiva con Cmd+F5 (oppure tenendo premuto il pulsante Touch ID sulle tastiere compatibili). Dispone di un proprio tasto modificatore — il tasto VoiceOver (VO), di solito Caps Lock o Control+Opzione — che precede la maggior parte delle scorciatoie specifiche di VoiceOver. Una volta attivo, VoiceOver annuncia l’elemento in focus, il ruolo e lo stato.

A livello macroscopico, VoiceOver su macOS si comporta in modo simile a JAWS o NVDA su Windows: navigazione da tastiera per punto di riferimento, per intestazione, per campo modulo; annunci di ruolo/stato/valore ARIA; gestione delle regioni live.

A livello microscopico ci sono particolarità che colgono di sorpresa gli sviluppatori abituati ai test su Windows:

  • Il «rotore» di VoiceOver è l’equivalente in Apple della modalità cursore virtuale / modalità moduli di JAWS. VO+U apre un rotore (un anello stilizzato) che elenca le modalità di navigazione — intestazioni, link, controlli modulo, punti di riferimento, aree web. L’utente sceglie una modalità e scorre tra gli elementi di quel tipo.
  • <button> vs role="button" — VoiceOver storicamente li ha annunciati in modo leggermente diverso; il moderno Safari ha ridotto ma non eliminato del tutto la differenza.
  • Anelli di focus personalizzati. VoiceOver su macOS disegna il proprio contorno scuro attorno all’elemento in focus. Se la pagina disegna anche un proprio anello di focus, entrambi sono visibili contemporaneamente e possono entrare in conflitto visivamente.

Su iOS — la piattaforma più rilevante

Su iOS, VoiceOver si attiva tramite il Collegamento di accessibilità (tripla pressione del tasto laterale o tramite Impostazioni). Il modello di interazione è basato su gesti ed è lo standard operativo per l’accessibilità mobile:

  • Scorrimento a un dito verso destra — sposta il focus all’elemento successivo.
  • Scorrimento a un dito verso sinistra — elemento precedente.
  • Doppio tocco con un dito — attiva l’elemento in focus.
  • Scorrimento con tre dita su/giù — scorre la schermata.
  • Pizzico con due dita — esce da e rientra negli elementi con sottostruttura.
  • Rotore VoiceOver (rotazione con due dita sul touchscreen) — stesso concetto di macOS; navigazione per punti di riferimento, intestazioni, ecc.

Questi gesti costituiscono il vocabolario di fatto per l’uso di screen reader su dispositivi mobili. Qualsiasi app o pagina web che li interrompa — intercettando gli eventi touch, intrappolando il focus, rendendo gli elementi non chiudibili — è un bug diretto di accessibilità mobile.

Come si presenta il testing di VoiceOver su iOS

Tre pattern rivelano la maggior parte dei bug di VoiceOver su iOS:

  1. Scorrere l’intera schermata con scorrimenti a un dito. L’ordine di tabulazione dovrebbe corrispondere all’ordine visivo. Ogni elemento interattivo dovrebbe annunciare il proprio ruolo.
  2. Aprire il rotore e controllare gli elenchi di intestazioni e punti di riferimento. I punti di riferimento mancanti o i livelli di intestazione saltati sono immediatamente visibili.
  3. Attivare qualsiasi aggiornamento dinamico (avanzamento carosello, espandi/comprimi, invio modulo). Verificare che il cambiamento venga annunciato tramite l’apposita regione aria-live, e non tramite una mutazione silenziosa del DOM che l’utente non sente mai.

VoiceOver su iOS è anche il riferimento di Apple per le app iOS native; le stesse competenze di testing si trasferiscono tra web e nativo all’interno dell’ecosistema Apple.