Miksi yhden ruudunlukijan testaaminen ei riitä

Kun esteettömyystarkastuksessa todetaan, että verkkosivusto ”toimii näytönlukijoiden kanssa”, tämä väite on lähes merkityksetön ilman tarkennusta. Näytönlukijat eivät muodosta yhtenäistä ohjelmistoryhmää – ne ovat monimutkaisia sovelluksia, joista kukin toteuttaa oman tulkintansa käyttöjärjestelmien tarjoamista esteettömyysrajapinnoista ja soveltaa tätä tulkintaa selaimen oman esteettömyyspuun päälle, joka puolestaan vaihtelee huomattavasti eri toimittajien välillä.

Tuloksena on monikerroksinen tulkintojen kokonaisuus. A role="dialog" attribuutti modaalielementissä luetaan eri tavalla JAWS 2024:ssä Chromen kanssa verrattuna NVDA 2024.1:een Firefox 124:n kanssa ja VoiceOveriin macOS Sonomassa Safarin 17:n kanssa. Nämä eivät ole vain pieniä sanamuodon eroja – ne voivat ratkaista, ymmärtääkö käyttäjä olevansa modaalidialogissa, joka lukitsee fokuksen, vai eikö hän kuule mitään.

~70%
AIOPSGROUPin sisäisen tarkastuksen tietojen mukaan suurin osa näytönlukijoiden virheistä liittyy tiettyihin yhdistelmiin; osuudet vaihtelevat tuotetyypin mukaan
1.3B
Maailmanlaajuisesti ihmiset elävät jonkinlaisen vammaisuuden kanssa, WHO:n vuoden 2023 vammaisuutta koskevan maailmanraportin mukaan
98%
WebAIM Million -raportin 2024 mukaan miljoonan suosituimman kotisivun joukossa oli havaittavissa WCAG-vaatimusten vastaisia kohtia
~57%
WebAIM:n SR-tutkimuksen nro 10 (2023) mukaan yli puolet näytönlukijoiden käyttäjistä käyttää useampaa kuin yhtä näytönlukijaa; selaimien rinnakkaiskäytön luvut ovat samankaltaisia

The three-layer stack — operating system accessibility API → → screen reader engine — means that any change at any layer can produce an entirely different user experience. Browsers update their accessibility tree implementations. Screen readers update their virtual buffer strategies. OS APIs evolve. The combination testing requirement isn’t bureaucratic box-ticking; it’s a technical necessity rooted in genuine architectural divergence.

Esteettömyysratkaisut

Jokainen näytönlukijan vuorovaikutus kulkee vähintään kolmen kerroksen läpi: käyttöjärjestelmän esteettömyysrajapinta (MSAA/UI Automation Windowsissa, NSAccessibility macOS:ssa, ATK/AT-SPI Linuxissa) → selaimen esteettömyyspuu (Chromen AX-puu, Firefoxin IA2-silta, Safarin NSAccessibility) → näytönlukijan virtuaalinen puskuri (JAWS:n Virtual PC Cursor, NVDA:n Browse Mode, VoiceOverin Rotor-malli). Virhe missä tahansa kerroksessa näkyy näytönlukijan toimintahäiriönä, mutta korjauskohta ja vaikuttavat yhdistelmät vaihtelevat huomattavasti.

”Testaus yhdellä näytönlukijalla ja yhdellä selaimella on kuin verkkosivuston testaaminen vain yhdellä näytön tarkkuudella ja sen kutsuminen responsiiviseksi. Todellisen käytön laajuus on yksinkertaisesti paljon laajempi kuin mitä yksi ainoa yhdistelmä pystyy kattamaan.”

— AIOPSGROUPin esteettömyyssuunnittelun toimiala

Tärkeimmät näytönlukija- ja selainyhdistelmät

Apuvälineteknologian kenttä on keskittynyt muutamalle hallitsevalle työkalulle, mutta jokaisella on omat arkkitehtoniset ominaisuutensa, käyttäjäkuntansa ja selainyhteensopivuutensa. Näiden ymmärtäminen on edellytys testien järkevälle priorisoinnille.

JAWS
Työpaikkojen saavutettavuus puheohjauksella · Freedom Scientific
Markkinaosuus: noin 40 % työpöytätietokoneiden näytönlukijoiden käyttäjistä
Paras selainChrome / Edge
Sopii hyvin yhteenFirefox
ARIA-tuki
Skriptin mukauttaminen
Hinta$$$$ Lisensoitu
NVDA
NonVisual Desktop Access · NV Access
Markkinaosuus: noin 40 % (WebAIM 2023) tietokoneiden näytönlukijoiden käyttäjistä
Paras selainFirefox
Sopii hyvin yhteenKromi
ARIA-tuki
Laajennusten ekosysteemi
HintaIlmainen / Avoimen lähdekoodin
VoiceOver (macOS)
Sisäänrakennettu · Apple Inc.
Markkinaosuus: noin 9 % työpöytätietokoneiden näytönlukijoiden käyttäjistä
Paras selainSafari
Vältä testaustaChrome macOS:ssa
ARIA-tuki
Kosketus- ja eleohjaus
HintaIlmainen (sisäänrakennettu macOS:ssa)
VoiceOver (iOS)
Sisäänrakennettu · Apple Inc.
Markkinaosuus: noin 71 % mobiililaitteiden näytönlukijoiden käyttäjistä
SelainSafari (pakollinen iOS:ssa)
Eleiden malliPyyhkäisy-/napautusnavigointi
ARIA-tuki
Mukautettujen toimintojen tuki
HintaIlmainen (sisäänrakennettu iOS:ssa)
TalkBack
Sisäänrakennettu · Google / Android
Mobiilimarkkinaosuus: noin 29 % (Android-näytönlukija)
SelainChrome (ensisijainen)
Eleiden malliTutustu kosketuksella
ARIA-tuki
Pistekirjoitusnäyttö
HintaIlmainen (sisäänrakennettu Androidissa)
Kertoja
Sisäänrakennettu · Microsoft Windows
Markkinaosuus: noin 4 % pöytätietokoneissa (kasvussa)
Paras selainEdge (Chromium)
Vanha pariliitosIE (vältä)
ARIA-tuki
UIA-integraatio
HintaIlmainen (sisäänrakennettu Windowsissa)

AT:n ja selaimen käyttäytymismatriisi

Seuraavassa taulukossa on esitetty yleisten ARIA-mallien ja HTML-semantiikan toimintatavat tärkeimmissä apuvälineiden ja selainten yhdistelmissä. Tulokset perustuvat testaukseen, joka on suoritettu tuotantokäyttöön soveltuvilla versioilla vuoden 2025 ensimmäisen neljänneksen tilanteen mukaan.

Selite: Hyväksytty = ilmoitettu oikein ja kokonaan. Osittainen = ilmoitettu, mutta tietoja puuttuu tai ne ovat virheellisiä. Hylätty = ei ilmoitettu, ilmoitettu virheellisesti tai navigointi keskeytyi.

Taulukko, joka kuvaa näytönlukijoiden ja selainten käyttäytymistä yleisten ARIA-mallien yhteydessä. Sarakkeet edustavat apuvälineiden ja selainten yhdistelmiä. Rivit edustavat tiettyjä ARIA-ominaisuuksia. Soluissa on arvot: Hyväksytty, Osittain hyväksytty tai Hylätty.
Ominaisuus / Kuvio JAWS + Chrome JAWS + Edge NVDA + Firefox NVDA + Chrome VoiceOver + Safari VoiceOver + Chrome (Mac) Kertoja + Edge TalkBack + Chrome
role="dialog" + aria-modal Ohita Ohita Ohita Osittainen Osittainen Epäonnistuminen Ohita Osittainen
aria-live=”polite” -päivitykset Ohita Ohita Ohita Osittainen Ohita Osittainen Ohita Osittainen
aria-live=”assertive” Ohita Ohita Ohita Ohita Osittainen Epäonnistuminen Ohita Ohita
role=”combobox” (ARIA 1.2) Ohita Ohita Ohita Osittainen Osittainen Epäonnistuminen Osittainen Osittainen
role=”grid” + näppäimistönavigointi Ohita Ohita Ohita Ohita Osittainen Epäonnistuminen Osittainen Epäonnistuminen
tietojen julkistamista koskeva laajennettu seloste Ohita Ohita Ohita Ohita Ohita Osittainen Ohita Ohita
SVG, jossa on rooli=”img” + aria-label Ohita Ohita Ohita Ohita Ohita Ohita Osittainen Ohita
Virheilmoitus aria-describedby-attribuutin kautta Ohita Ohita Ohita Ohita Ohita Osittainen Ohita Ohita
Vedä ja pudota (aria-grabbed) Osittainen Osittainen Osittainen Osittainen Epäonnistuminen Epäonnistuminen Epäonnistuminen Epäonnistuminen
role=”tablist” / välilehtimalli Ohita Ohita Ohita Ohita Ohita Osittainen Ohita Osittainen
Mukautettu kohdistuksen hallinta (SPA-reititys) Osittainen Osittainen Ohita Osittainen Osittainen Epäonnistuminen Osittainen Osittainen
CSS-sisältö: kuvakkeilla Epäonnistuminen Epäonnistuminen Epäonnistuminen Epäonnistuminen Epäonnistuminen Epäonnistuminen Epäonnistuminen Epäonnistuminen
Vedä ja pudota: yleinen epäonnistuminen

Se aria-grabbed attribuutti on poistettu käytöstä ARIA 1.1:ssä, ja sen tuki näytönlukijoissa on lähes olematonta kaikissa yhdistelmissä. Sitä käyttävät tiimit ovat ottaneet tuotantokäyttöön toiminnallisesti esteellisen vedä ja pudota -toiminnon. Korvaava malli käyttää leikkaa/liitä-näppäimistötoiminnot yhdessä visuaalisen vetomallin kanssasekä reaaliaikaiset alueilmoitukset palautteen saamiseksi.


Missä yhdistelmät eroavat toisistaan: Kriittisten erojen selitys

On olennaisen tärkeää ymmärtää, miksi yhdistelmät eroavat toisistaan – ei pelkästään se, että ne eroavat – jotta voidaan kirjoittaa koodia, joka toimii luotettavasti koko matriisin alueella. Erot voidaan jakaa useisiin arkkitehtonisiin luokkiin.

Näytönlukijan ja selaimen yhdistelmien väliset arkkitehtoniset erot, mukaan lukien kunkin eroavaisuustyypin perussyy ja suositellut korjaustoimenpiteet.
Poikkeamaluokka Kyseiset yhdistelmät Vakavuus Perimmäinen syy Vaikutusten lieventäminen
Virtuaalinen puskuri vs. vo-virtuaalinen puskuri JAWS/NVDA (virtuaalinen) vs. VoiceOver (monissa tiloissa ei virtuaalista puskuria) Korkea JAWS ja NVDA luovat sisäisen dokumenttimallin (virtuaalisen puskurin); VoiceOver on vuorovaikutuksessa esteettömyyspuun kanssa suoremmin Älä luota DOM-muutosten ajoitukseen; käytä ARIA-reaaliaikaisia alueita kaikessa dynaamisessa sisällössä
ARIA-modaalin tuki VoiceOver ja Safari vs. kaikki Windowsin ääniopasohjelmat Korkea Safari toteuttaa aria-modal-attribuutin eri tavalla — VoiceOver ei välttämättä rajoita lukemista modaalisen sisällön piiriin ilman, että käytetään lisäksi inert-attribuuttia Käyttö inert taustasisällön attribuutti; testaa sekä Windowsissa että macOS:ssa
Esteetön nimien laskeminen (vanha versio) Huomautus: Vain JAWS + IE 11 Historiallinen IE 11:n tuki päättyi kesäkuussa 2022, eikä JAWS 2024 tai WCAG 2.2 tue sitä virallisesti. Sen MSAA-pohjainen nimien laskenta oli huomattavasti rajoitettua. Tämä rivi on säilytetty vain niille tiimeille, jotka ylläpitävät ennen vuotta 2022 luotuja koodikantoja. Ei koske WCAG 2.2 -vaatimustenmukaisuustyötä. Siirry ajantasaisiin selaimiin; JAWS + Edge tai Chrome on oikea nykyaikainen kohde.
Selaustila vs. sovellustila JAWS/NVDA-sovellustilan poikkeustapaukset Keskikokoinen Sekä JAWS että NVDA siirtyvät automaattisesti selaustilasta sovellustilaan, kun kohdassa on rooli=”application”, mikä voi aiheuttaa ongelmia käyttäjille, ellei sitä ole suunniteltu huolellisesti Vältä role-attribuuttia, jonka arvona on ”application”, ellei komponentti todellakin tue kaikkea näppäimistönavigointia; dokumentoi vuorovaikutusmalli
Reaaliaikainen alueiden ajoitus NVDA + Chrome vs. NVDA + Firefox Keskikokoinen Chrome ja Firefox eroavat toisistaan siinä, milloin ne ilmoittavat aputeknologialle DOM-muutoksista; Chrome voi viivästyttää tai yhdistää päivityksiä Käytä erillistä live region -elementtiä, joka säilyy DOM-rakenteessa; älä koskaan käytä samaa live region -elementtiä samanaikaisesti eri viestityypeille
Kohdistuksen hallinta DOM-muutoksen jälkeen SPA-reititys kaikissa yhdistelmissä Korkea Yksisivuiset sovellukset, joissa sisältö muuttuu ilman navigointitapahtumia, menettävät näytönlukijan kontekstin; jokainen apuväline käsittelee tämän tilanteen eri tavalla Siirrä kohdistus kuvaavaan otsikkoon tai alueen maamerkkiin navigoinnin jälkeen; ilmoita reitinmuutoksista reaaliaikaisen alueen kautta
iOS Safarin moottorin rajoitus VoiceOver iOS + kaikki selaimet Keskikokoinen iOS-laitteissa kaikki selaimet käyttävät taustalla WebKit-moottoria (App Storen sääntöjen mukaisesti); mikä tahansa WebKitin esteettömyysrakenteessa oleva virhe vaikuttaa kaikkiin selaimiin Testaa Safari-selaimella iOS-laitteella; muiden iOS-selaimien tulokset ovat samat esteettömyyspuun tasolla
Taulukon otsikon liittäminen Monimutkaiset taulukot kaikissa yhdistelmissä Alhainen attribuuttien scope=”colgroup” ja scope=”rowgroup” tuki vaihtelee nykyaikaisissa näytönlukijoissa; headers-attribuutti tarjoaa selkeän varajärjestelmän Suosi yksinkertaisia taulukkorakenteita; käytä headers-attribuuttia nimenomaisesti monitasoisissa taulukoissa, joissa on otsikot

Huomautus JAWS-ohjelmistosta ja Internet Explorer 11:stä

Internet Explorer 11:n tuki päättyi 15. kesäkuuta 2022. Microsoft ei enää tarjoa tietoturvapäivityksiä tai teknistä tukea, eikä Freedom Scientificin JAWS 2024 tukea virallisesti IE 11:tä. WCAG 2.2 — julkaistu lokakuussa 2023 — sisältää menestyskriteereitä, kuten 2.4.11 Focus Not Obscured, jotka riippuvat CSS:stä ja renderointikyvystä, joita IE 11 ei voi tukea. JAWS+IE ei ole kelvollinen kohdeyhdistelmä WCAG 2.2 AA -vaatimustenmukaisuustyöhön.

Tästä huolimatta tiimit, jotka ylläpitävät ennen vuotta 2022 luotuja vanhoja koodikantoja tai tukevat suljettuja yritysympäristöjä, joissa siirtymistä Internet Explorerista Edgeen ei ole vielä saatettu loppuun, saattavat joutua tutustumaan tämän yhdistelmän aiempaan toimintaan. JAWS/IE-yhdistelmä käytti Microsoft Active Accessibility (MSAA) -rajapintaa — vanhempaa API-kerrosta, jonka ARIA-tuki oli huomattavasti rajoitetumpi verrattuna IAccessible2 (IA2) ja UI Automation (UIA) -rajapintoihin, joita nykyaikaiset selaimet tarjoavat. Monet ARIA 1.1 -mallit toimivat virheellisesti tai eivät toimineet lainkaan MSAA:n alla.

Jos kuulut niihin harvoihin tiimeihin, joilla on kirjallinen, sopimukseen perustuva velvollisuus tukea IE 11:tä, käsittele sitä erillisenä lisätestikohteena – älä osana WCAG 2.2 -vaatimustenmukaisuusohjelmaa. Nykypäivän yrityskäytössä suosituin yhdistelmä on JAWS + Edge (Chromium), joka hyödyntää UIA:ta ja tarjoaa erinomaisen ARIA-tuen.

IE 11 ja WCAG 2.2: Ei yhteensopiva

IE 11 ei tue useiden WCAG 2.2 AA -vaatimusten täyttämiseen tarvittavaa CSS:ää ja selaimen renderointia. IE 11:n sisällyttäminen WCAG 2.2 -vaatimustenmukaisuustestausmatriisiin on teknisesti virheellistä – selain ei pysty läpäisemään testejä, joiden tukemiseen tarvittavaa renderointimoottoria sillä ei ole. Nykyaikaisessa yrityskäyttöön tarkoitetussa näytönlukijatestauksessa tulisi keskittyä JAWS + Edge (Chromium) -yhdistelmään tai JAWS + Chrome-yhdistelmään, jotka molemmat tarjoavat täyden UI Automation -tuen ja laajan ARIA 1.2 -yhteensopivuuden.

VoiceOver ja Safari: Erilainen lähestymistapa

Applen lähestymistapa esteettömyyteen eroaa perustavanlaatuisesti Microsoftin lähestymistavasta. Kun JAWS ja NVDA luovat asiakirjasta täydellisen virtuaalisen mallin ja antavat käyttäjille mahdollisuuden liikkua siinä fokuksesta riippumatta, VoiceOver toimii suoraan renderoidun esteettömyyspuun kanssa ja usein myös todellisen näppäimistön fokuksen avulla.

Tämä tarkoittaa, että mallit, jotka toimivat siirtämällä fokusta näkymättömästi – eli kun fokuksen siirtymät tapahtuvat ARIA-attribuuttien perusteella eikä käyttäjän toimien seurauksena – voivat aiheuttaa VoiceOverin toimintahäiriöitä tavalla, joka tuntuu selittämättömältä, kunnes ymmärtää arkkitehtuurisen eron. VoiceOver- käyttäjät macOS:ssa navigoivat erillisellä VoiceOver-kohdistimella, mutta VoiceOver-kohdistimen sijainnin ja näppäimistön fokuksen välinen suhde on tiiviimmin kytköksissä kuin JAWS:n Virtual PC Cursor -mallissa.

VoiceOver ja Chrome macOS:ssa: Piilevä sudenkuoppa

VoiceOverin testaaminen Chromen kanssa macOS-käyttöjärjestelmässä tuottaa tuloksia, jotka eivät kuvaa todellista käyttäjäkuntaa hyvin. Chromella macOS:ssa on perinteisesti ollut huono integraatio VoiceOverin käyttämään NSAccessibility-sovellusliittymään. Tämä yhdistelmä tuottaa enemmän vääriä virheitä kuin mikään muu yhdistelmä — tilanteet, jotka epäonnistuvat VoiceOver+Chromessa mutta läpäisevät VoiceOver+Safarissa, voivat olla Chromen vikoja, eivätkä esteettömyysongelmia. Käytä aina VoiceOver+Safaria vakiintuneena macOS-testiyhdistelmänä.


Testiskenaarioiden kattavuuslaskuri

Käytä tätä laskuria arvioidaksesi tuotteesi testaukseen tarvittavan työmäärän käyttäjäkuntasi ominaispiirteiden, vaatimustenmukaisuustavoitteen ja käytettävissä olevien apuvälineyhdistelmien perusteella.

AT-yhdistelmätestauksen arviointityökalu

Määritä syöttötiedot, jotta järjestelmä voi laskea suositellun testimatriisin laajuuden ja arvioidun työmäärän.

6
Suositeltavat AT-yhdistelmät
Työpöytä- ja mobiililaitteiden prioriteettiparit
96
Arvioidut testausajat julkaisua kohti
Manuaalinen + puoliautomaattinen
78%
Käyttäjäkunnan kattavuus
AT:n markkinaosuuden mukaan
120
Testiskenaarioiden kokonaismäärä
Kaikissa yhdistelmissä

Riskipainotetun kattavuusstrategian laatiminen

Yhdelläkään tiimillä ei ole rajattomasti testausresursseja. Testauskattavuusstrategian tavoitteena on maksimoida todellisiin käyttäjiin vaikuttavien todellisten vikojen havaitsemisen todennäköisyys ajan ja työkalujen asettamissa rajoissa. Riskipainotus – eli testauspanoksen kohdentaminen suhteessa käyttäjiin kohdistuviin vaikutuksiin ja arkkitehtonisiin riskeihin – on ammattimainen toimintatapa.

Suositellut prioriteettitasot yleisille verkkotuotteille

Yhdistelmä Ensisijaisuus Perustelut markkinaosuudelle Huomautukset
NVDA 2024.x + Firefox (uusin versio) P1 — Ydin Käyttömäärän mukaan eniten käytetty yhdistelmä: pöytätietokone + selain Paras standardien noudattaminen; erinomainen ARIA 1.2 -testaukseen
JAWS 2024 + Chrome (uusin versio) P1 — Ydin Hallitseva asema yritysmaailmassa; noin 40 % työpöytätietokoneiden SR-käyttäjistä (WebAIM 2023, laskua vuoden 2021 noin 54 %:sta) Yrityksen kannalta kriittinen; testaa monimutkaiset ARIA-widgetit perusteellisesti
VoiceOver + Safari (macOS Sonoma) P1 — Ydin Kaikki Mac-käyttäjät sekä luovien alojen ja suunnittelualan ammattilaiset Canonicalin macOS-testi; älä käytä VoiceOveria ja Chromea
VoiceOver + Safari (iOS 17) P1 — Ydin noin 71 % mobiililaitteilla SR:ää käyttävistä; vaaditaan, jos mobiililiikennettä on Testaa kosketusnavigointia; pyyhkäisyeleiden malli on erilainen
JAWS 2024 + Edge (Chromium) P1 — Ydin Oikea nykyaikainen yrityskäyttöön tarkoitettu yhdistelmä; korvaa JAWS+IE:n kaikessa nykyisessä WCAG 2.2 -työssä Täysi UIA-tuki; erinomainen ARIA 1.2 -yhteensopivuus; lisäosa mihin tahansa yritystuotteeseen
TalkBack + Chrome (Android 14) P2 — Laajennettu noin 29 % mobiililaitteilla SR:ää käyttävistä; kasvava Android-käyttäjäkunta Explore-by-touch eroaa huomattavasti iOS:sta; testaa erikseen
NVDA + Chrome (uusin versio) P2 — Laajennettu Koskee NVDA-käyttäjiä, jotka pitävät Chromea parempana kuin Firefoxia Keskitymme reaaliaikaisten alueiden ajoituseroihin verrattuna NVDA:han ja Firefoxiin
Narrator + Edge (uusin versio) P3 — Lisätietoja Kasvava Windowsin sisäänrakennettu käyttäjäkunta; merkitys julkishallinnolle Vankka tuki käyttöliittymän automatisoinnille; julkisen sektorin tuotteiden testaus
JAWS + IE 11 (vain vanhat versiot) Vanha versio — Ei kuulu soveltamisalaan IE 11:n tuki päättyy kesäkuussa 2022; JAWS 2024 ei tue sitä; ei ole yhteensopiva WCAG 2.2:n kanssa Sisällytä vain, jos kyseessä on dokumentoitu sopimusvelvoite, joka koskee ennen vuotta 2022 luotua koodipohjaa. Ei kuulu WCAG 2.2 -vaatimustenmukaisuustavoitteisiin.

Käyttäjäkunnan kattavuus testattujen yhdistelmien lukumäärän mukaan

  • 1 yhdistelmä 35%
  • 2 yhdistelmää 55%
  • 4 yhdistelmää 72%
  • 6 yhdistelmää 83%
  • 8 yhdistelmää 91%
  • 12 yhdistelmää 98%
Yhdistelmätestauksen 80/20-sääntö

NVDA+Firefox, JAWS+Chrome ja VoiceOver+Safari edustavat yhdessä noin 78 % näytönlukijoiden todellisesta käytöstä. Useimmille yleisölle suunnatuille verkkotuotteille näiden kolmen yhdistelmän sekä VoiceOver+Safari iOS:n kattava testaaminen tarjoaa parhaan tuoton testausinvestoinnille. Lisää TalkBack+Chrome, jos mobiililiikenne ylittää 30 %, ja JAWS+Edge, jos tuotteesi palvelee yritysympäristöjä — se on oikea nykyaikainen yritysyhdistelmä, joka tarjoaa täyden UIA-tuen ja laajan ARIA 1.2 -yhteensopivuuden. IE 11 on elinkaarensa lopussa eikä ole kelvollinen WCAG 2.2 -vaatimustenmukaisuuden kohde.


Toistettava moniyhdistelmätestausprosessi

Tehokas yhdistelmätestaus ei tarkoita pelkästään saman manuaalisen testiskriptin ajamista useilla eri työkaluilla. Jokaisella automaattisella testityökalulla on omat näppäinkomennot, navigointimallit ja ilmoitusten yksityiskohtaisuusasetukset. Ammattimaisessa työnkulussa nämä erot otetaan huomioon, ja sen avulla saadaan toistettavia ja vertailukelpoisia tuloksia.

1
Varastotilanne
Luetteloidaan kaikki interaktiiviset komponentit ja käyttäjäpolut
2
Riskitaso
Määritä yhdistelmien prioriteetti käyttäjäryhmän ja monimutkaisuuden perusteella
3
Lähtötilanne
Määritä odotetut ilmoitukset komponenttikohtaisesti ja yhdistelmäkohtaisesti
4
Suorita
Suorita jäsenneltyjä testiskriptejä; tallenna puheulostulo sanatarkasti
5
Potilaiden luokittelu
Luokittele viat yhdistelmän, vakavuuden ja perussyyn mukaan
6
Korjata
Korjaa oikealla tasolla (HTML, ARIA, CSS, JS:n fokuksen hallinta)
7
Takaisku
Testaa kaikki yhdistelmät uudelleen korjauksen ja mahdollisten regressioiden varalta

Kunkin AT:n oikea asennus

Yksi yleisimmistä syistä virheellisiin tuloksiin yhdistelmätestauksessa on virheellinen AT-asetus. Jokainen laite on asetettava oikeaan tilaan ennen testauksen aloittamista.

Suositellut asetukset kullekin näytönlukijalle ennen testausta
Näytönlukija Avainasetukset
JAWS Aseta yksityiskohtaisuusasetukseksi ”Keskitaso”; ota käyttöön ”Lue välimerkit” -asetus tasolle ”Jotkut”; käytä Virtual PC -kohdistinta verkkoselaimessa
NVDA Selaustila (vaihtoehto B-näppäimellä); yksityiskohtaisuusasetukseksi ”Sanat”; ota käyttöön ”Ilmoita maamerkkialueet”
VoiceOver (macOS) VO+A: kaikki teksti; VO+U: Rotor; varmista, että ”Web Rotor” sisältää otsikot, linkit ja lomakekentät
VoiceOver (iOS) Yksi pyyhkäisy oikealle/vasemmalle lineaarista selaamista varten; kahden sormen vieritys; kolme napautusta aktivoimiseksi
TalkBack Tutustu kosketustoimintojen avulla; käytä ”seuraava”-eleitä lineaariseen selaamiseen; tarkista lukujärjestys
Kertoja Skannaustila (Caps Lock + välilyönti); skannaustaso ”Kohteet”; yksityiskohtaisuus ”Oletus”

Mitä testauksen aikana tulee kirjata muistiin

Sanasta sanaan -puheentallenne on kultainen standardi. Näytön tallennus äänitallenteella mahdollistaa istunnon jälkeisen analyysin ja tuottaa todistusaineistoa vikailmoituksiin.

  • Ilmoitettu rooli Vahvista, että elementin tyyppi luetaan ääneen (painike, linkki, otsikkotaso N jne.)
  • Käytettävissä oleva nimi Varmista, että ilmoitettu nimi vastaa näkyvää nimikettä tai tarkoitettua vaihtoehtoista nimeä
  • Tila / ominaisuus Laajennettu/supistettu, valittu/valitsematta, pakollinen, virheellinen — kaikki on ilmoitettava
  • Dynaamisen sisällön päivitykset Live-alueen ilmoitusten on laukeava oikeaan aikaan ja oikealla tarkkuudella
  • Navigointijärjestys Välilehtien ja lukujärjestyksen on vastattava visuaalista/loogista järjestystä; tarkista, ettei fokuksen kiinnittymistä aiheuttavia kohtia ole
  • Virheiden tunnistaminen Lomakkeen virheet on ilmoitettava lähetyshetkellä ja liitettävä kyseiseen kenttään

WCAG 2.2 AA -tason näytönlukijatestauksen tarkistuslista

Seuraava tarkistuslista vastaa suoraan WCAG 2.2 AA -vaatimustenmukaisuuskriteereitä, joiden täyttyminen varmistetaan pääasiassa näytönlukijatestauksella. Jokaisen kohdan on läpäistävä kaikki P1-yhdistelmät, ennen kuin ominaisuus katsotaan WCAG 2.2 AA -vaatimusten mukaiseksi.

WCAG 2.2 AA -vaatimustenmukaisuuskriteerit, jotka liittyvät näytönlukijatestaukseen, sekä kunkin kriteerin testausmenetelmä ja kriteerin vaikutuksen kohteena olevat apuvälineyhdistelmät.
WCAG SC Peruste Taso Ensisijainen testausmenetelmä Kriittisimmät yhdistelmät
1.1.1 Muu kuin tekstisisältö A Siirry kaikkiin kuviin; varmista, että vaihtoehtoinen teksti luetaan ääneen ja että se on asianmukainen TalkBack ja Chrome, VoiceOver ja Safari (SVG-kuvien reunojen erityistapaukset)
1.3.1 Tiedot ja suhteet A Varmista, että otsikot, luettelot, taulukot ja lomakkeen kenttien nimet luetaan ääneen oikean semantiikan mukaisesti Kaikki yhdistelmät; monimutkaiset taulukot NVDA:ssa ja Firefoxissa sekä JAWS:ssa ja Chromessa
1.3.2 Merkityksellinen jakso A Lue sivu lineaarisessa järjestyksessä; varmista, että lukujärjestys vastaa kuvien järjestystä VoiceOver ja Safari, TalkBack ja Chrome
2.1.1 Näppäimistö A Käytä kaikkia toimintoja pelkästään näppäimistöllä; varmista, ettei näppäimistökomentoja ole Kaikki yhdistelmät; siirtymät NVDA:n selaus- ja sovellustilan välillä
2.4.3 Keskity-komento A Selaa sivua Tab-näppäimellä; varmista, että valintajärjestys on looginen ja säilyttää sisällön merkityksen Kaikki yhdistelmät; erityisesti SPA-reititys
2.4.6 Otsikot ja nimikkeet AA Käytä otsikkoluetteloa / roottoria; varmista, että kaikki otsikot ovat kuvaavia ja oikealla tasolla Kaikki yhdistelmät
2.4.7 Tarkennus näkyvissä AA Varmista silmämääräisesti, että tarkennusilmaisin näkyy kaikissa tarkennettavissa olevissa elementeissä Kaikki yhdistelmät (silmämääräinen tarkastus)
2.4.11 Tarkkuus ei heikkene (vähimmäisvaatimus) AA Varmista, että korostetut elementit eivät jää kokonaan piiloon kiinteiden ylä- tai alatunnisteiden tai peittokuvien taakse Kaikki yhdistelmät
2.5.3 Nimikyltti AA Vertaa ilmoitettua nimeä näkyvään tekstiin; esteettömän nimen on sisällettävä näkyvää tekstiä JAWS ja Chrome, NVDA ja Firefox
3.3.1 Virheiden tunnistaminen A Lähetä lomake virheineen; varmista, että virheet ilmoitetaan ja että ne on liitetty kenttiin Kaikki yhdistelmät; reaaliaikainen alueiden ajoitus NVDA:ssa ja Chromessa
3.3.2 Etiketti tai ohjeet A Siirry lomakekenttiin; varmista, että kentän nimet ja muotoilun ohjeet luetaan ääneen ennen kenttää Kaikki yhdistelmät
4.1.2 Nimi, rooli, arvo A Siirry kaikkiin interaktiivisiin ohjauselementteihin; varmista, että nimi, rooli ja tila luetaan ääneen Kaikki yhdistelmät; suurimman vikaantumisasteen peruste
4.1.3 Tilanilmoitukset AA Lähetä tilaviestit (lomakkeen lähetys onnistui, lataustilat); vahvista ilmoitus ilman, että kohdistus muuttuu NVDA + Chrome (ajoitus), VoiceOver + Safari
4.1.2 nimi, rooli, arvo: kriteeri, jonka täyttämisessä epäonnistuttiin useimmin

WCAG 4.1.2 on johdonmukaisesti yleisin virhekriteeri sekä automaattisissa että manuaalisissa auditoinneissa. Se edellyttää, että jokainen käyttöliittymäkomponentti ilmoittaa nimensä, roolinsa ja nykyisen arvonsa/tilansa aputeknologialle. Yleisimmät virheet ovat: mukautetut ohjauskomponentit, joilla ei ole ARIA-roolia, interaktiiviset elementit, joilla ei ole saavutettavaa nimeä (pelkästään kuvakkeista koostuvat painikkeet), sekä dynaamiset tilamuutokset (aria-checked, aria-expanded, aria-selected), jotka eivät näy ohjelmoinnissa. Tämän kriteerin testaaminen kaikissa P1-yhdistelmissä on ehdottomasti välttämätöntä.


Kattavien yhdistelmätestien liiketoiminnalliset perusteet

Näytönlukijan testaus ei ole pelkkä esteettömyysvaatimusten täyttämisen rasti ruutuun. Se on laadunvarmistuksen ala, joka oikeilla yhdistelmillä hyvin suoritettuna paljastaa käyttöliittymän virheitä, jotka vaikuttavat kaikkiin käyttäjiin – ei vain vammaisiin. Kohdistuksen hallinnan virheet, päivityksissä epäonnistuva dynaaminen sisältö sekä tilatiedot, joita ei välitetä ohjelmoidusti, ovat käytettävyysongelmia, jotka sattuvat tulemaan esiin aputeknologian kautta.

Lainsäädäntöympäristö tukee teknistä perustelua. EU:n verkkosisällön saavutettavuusdirektiivi, Yhdysvaltojen tarkistetut Section 508 -standardit, Ison-Britannian julkisen sektorin elinten saavutettavuusmääräykset sekä yksityissektorilla kiihtyvä ADA-oikeudenkäyntien aalto viittaavat kaikki siihen, että WCAG 2.2 AA on perusvaatimus. Oikeudenkäyntiriski on suurin silloin, kun dokumentoituja testejä ei ole suoritettu – ja yhden yhdistelmän testaaminen on usein riittämätön todiste vilpittömästä pyrkimyksestä noudattaa vaatimuksia.

AIOPSGROUPissa teemme yhteistyötä rahoituspalvelu-, julkishallinto-, vähittäiskauppa- ja yritysohjelmistoalalla toimivien organisaatioiden kanssa luodaksemme esteettömyystestausohjelmia, jotka ovat sekä perusteellisia että kestäviä. Perusteellisuus tarkoittaa oikeiden yhdistelmien kattamista oikeille käyttäjäryhmille. Kestävyys tarkoittaa esteettömyystestauksen integroimista CI/CD-prosesseihin, kehitystiimien kouluttamista sekä tuotteen mukana kasvavien, jatkuvasti päivittyvien testimatriisien luomista.

”Näytönlukijoiden yhteensopivuutta ei voi saavuttaa pelkästään automaation avulla. Automaattiset työkalut löytävät noin 30–40 % WCAG-vaatimusten vastaisuuksista. Loput – ne, joilla on suurin merkitys todellisille käyttäjille – edellyttävät, että ihminen käyttää oikeaa näytönlukijaa oikeassa yhdistelmässä.”

— AIOPSGROUPin esteettömyysyksikkö, Esteettömyyden markkinatilanneraportti 2025

Jos tiimisi kehittää tai ylläpitää digitaalista tuotetta, joka palvelee mitä tahansa kohderyhmää, kysymys ei ole siitä, pitäisikö suorittaa moniyhdistelmäisiä näytönlukijatestejä, vaan siitä, miten ne toteutetaan tehokkaasti ja laajamittaisesti. Voimme auttaa molemmissa asioissa.

Aloita esteettömyystestausohjelmasi

AIOPSGROUP tarjoaa esteettömyystarkastuksia, näytönlukijatestauspalveluita, WCAG 2.2 AA -vaatimusten mukaisia korjaustoimenpiteitä sekä integroitua esteettömyyssuunnittelua – räätälöitynä juuri teidän teknologia-alustaanne ja julkaisurytmiänne varten.

Ota yhteyttä