Haluatko oppia lisää saavutettavuuden testaamisesta? Oletko mahdollisesti perehtynyt jo näppäimistötestaukseen? Jos kyllä, seuraava looginen askel on ottaa haltuun ruudunlukijatestauksen perusteet.

Käsittelimme aiemmassa blogitekstissämme Näin testaat saavutettavuutta näppäimistöllä näppäimistötestauksen perusteita. Nyt on vuorossa astetta monimutkaisempi aihe, sillä seuraavaksi käsittelemme ruudunlukijatestausta.

Ruudunlukija muuttaa näytön sisällön puheeksi. Se on tärkeä työkalu esimerkiksi näkövammaisille käyttäjille, mutta sen avulla kuka tahansa voi testata, onko palvelu teknisesti saavutettava ja loogisesti rakennettu.

Miksi ruudunlukijalla testaaminen on tärkeää?

Joillekin käyttäjille ruudunlukija on välttämätön apuväline, joka mahdollistaa digitaalisten palveluiden käyttämisen. Pelkästään tästä syystä on oleellista varmistaa, miten ruudunlukija toimii palvelussa. Näin voi olla varma siitä, että ketään käyttäjää ei suljeta palvelusta ulos.

Mitä saavutettavuustestaamiseen tulee, ruudunlukijatestaus on erinomainen tapa tarkastaa palvelun toimintaa hyvin laaja-alaisesti. Moni saavutettavuuspuute ei nimittäin näy visuaalisesti. Ruudunlukija paljastaa siis ongelmia, joita ei huomaa pelkällä palvelun silmäilyllä.

Ruudunlukijalla voit tarkistaa esimerkiksi:

  • Onko kuvissa asianmukaiset alt-tekstit?
  • Välittyvätkö virheilmoitukset ruudunlukijalle vai näkyvätkö ne vain ruudulla?
  • Onko otsikkorakenne merkitty rakennetasolla loogisesti, vaikka visuaalisesti se näyttäisi oikealta?

Ruudunlukijatestaus on erityisen hyödyllistä, kun halutaan arvioida sivun ohjelmallista rakennetta ja sitä, millaista tietoa apuvälineet välittävät käyttäjälle.

Miten ruudunlukijalla testataan?

Ensimmäinen askel ruudunlukijatestaukseen on ruudunlukijan valitseminen. Voit käyttää esimerkiksi näitä:

  • NVDA: ilmainen ruudunlukija Windowsille.
  • VoiceOver: Apple-laitteiden oma ruudunlukija.
  • TalkBack: Android-laitteiden oma ruudunlukija.
  • JAWS: kaupallinen ruudunlukija Windowsille.

Ruudunlukijat ovat monimutkaisempia apuvälineitä kuin esimerkiksi näppäimistöt, minkä takia aluksi kannattaa valita vain yksi ruudunlukija, jonka käytön opettelee. Kun ensimmäinen ruudunlukija on tuttu, voi toisen vaihtoehdon opettelun aloittaa. Palveluita on kuitenkin hyvä testata useammalla ruudunlukijalla, sillä välillä jotkin saavutettavuuspuutteet ilmenevät vain tietyllä teknologialla.

Tässä on oppaita, joilla pääset alkuun ruudunlukijoiden käytössä:

Mihin asioihin ruudunlukijatestauksessa kannattaa kiinnittää huomiota?

Kun ruudunlukija on saatu käyttöön ja perustoiminnot hallintaan, voi varsinainen testaaminen alkaa. Käydään seuraavaksi läpi tärkeitä teemoja, joihin tulee kiinnittää huomiota testauksen aikana.

1. Elementtien kuvailu: kertooko ruudunlukija elementeistä kaiken oleellisen?

Jotta elementtejä pystyy käyttämään, ruudunlukijan tulee kuvailla ne oikein. Jos ruudunlukija ei kuvaile kaikkia ominaisuuksia tai jos ominaisuuksia kuvaillaan väärin, ei käyttäjä voi tietää, mikä elementti on kyseessä ja miten sitä kuuluu käyttää. Mieti siis:

  • Onko elementillä oikea rooli?
    Onko esimerkiksi painike oikeasti ohjelmallisesti button, eikä esimerkiksi div, joka vain näyttää painikkeelta?
  • Onko elementillä saavutettava nimi?
    Luetaanko esimerkiksi X-ikonilla merkityn sulkemispainikkeen kohdalla ”Sulje, painike” vai sanooko ruudunlukija vain ”painike”?
  • Jos elementillä on tila tai arvo, kuuluuko se?
    Esimerkiksi valintaruuduista pitäisi kuulua tieto niiden tilasta, kuten “valittu”, tai “ei valittu”.

2. Navigointi ja vuorovaikutus: pystyykö sisältöä selaamaan ja käyttämään?

Ruudunlukijat liikkuvat palvelussa sen ohjelmallisen rakenteen perusteella. Palvelun pitää olla sekä selattavissa että käytettävissä ruudunlukijalla – muuten saavutettavuus jää pintapuoliseksi.

  • Eteneekö kohdistus palvelussa loogisesti?
    Testaa, luetaanko sisältö ruudunlukijalla järkevässä järjestyksessä. Onko eteneminen merkityksen kannalta loogista vai pomppiiko kohdistus oudosti elementistä toiseen? Saavatko kaikki elementit kohdistuksen?
  • Siirtyykö kohdistus oikeaan paikkaan esimerkiksi modaalissa tai valikossa?
    Avaa esimerkiksi modaali-ikkuna ja tarkista, siirtyykö kohdistus automaattisesti sinne. Kun ikkuna suljetaan, pitäisi fokuksen palautua järkevään paikkaan.
  • Pystyykö kaikkea myös käyttämään?
    Ei riitä, että elementit saavat kohdistuksen, vaan kaikkia toimintoja täytyy pystyä myös käyttämään. Varmista, että pystyt aktivoimaan elementit ja suorittamaan toiminnot loppuun saakka.

3. Dynaamiset päivitykset: kuuluuko muutos?

Käyttäjän tulee pystyä seuraamaan palvelun toimintaa muuttuvissa tilanteissa. Siksi ruudunlukijan pitää pystyä välittämään erilaiset onnistumis- ja virheviestit käyttäjälle niiden ilmaantuessa. Mieti esimerkiksi:

  • Ilmoittaako ruudunlukija virheestä lomakkeessa?
    Jos lomake on täytetty väärin, lukeeko ruudunlukija käyttäjälle ilmestyvän virheviestin, kuten: “Sähköposti puuttuu”.
  • Kuuleeko käyttäjä onnistuneen toiminnon?
    “Tiedot tallennettu onnistuneesti” -ilmoitus voi jäädä kokonaan huomaamatta, jos sitä ei välitetä ruudunlukijalle sen ilmestyessä.

4. Sisällön merkitys: välittyykö visuaalinen tieto myös ruudunlukijalla?

Älä nojaa tiedon välittämisessä vain visuaalisiin asioihin. Kaiken tärkeän tiedon on oltava myös ohjelmallisesti esitettyä – eli sellaisessa muodossa, jonka ruudunlukija pystyy tulkitsemaan.

  • Onko kaikki olennainen tieto esitetty ruudunlukijalle havaittavalla tavalla?
    Esimerkiksi ulkoista sivustoa kuvaava kuvake linkin yhteydessä ei riitä yksinään. Myös ruudunlukijalle on kerrottava, että linkki vie ulkopuolelle.

Pienikin testaus vie pitkälle

Ruudunlukijalla testaaminen voi alkuun tuntua työläältä, mutta jo pienellä perehtymisellä saa paljon arvokasta tietoa palvelun saavutettavuudesta. Kaikkia yksityiskohtia ei tarvitse hallita heti, tärkeintä on aloittaa.

Myös monen asian samanaikainen tarkastelu voi olla raskasta, eikä kaikkea tarvitse testata kerralla. Vaiheittain eteneminen on myös fiksu ratkaisu.

  • Jos testaat verkkosivua, voit ensin keskittyä esimerkiksi pelkästään siihen, onko elementeillä kuvaavat saavutettavat nimet.
  • Seuraavalla kierroksella voit taas esimerkiksi tarkistaa, ovatko roolit oikein määritelty.
  • Kun purat testausta vaiheisiin, kuormitus on pienempi.

Yksi testattu sivu tai komponentti on jo askel kohti parempaa saavutettavuutta. Säännöllisellä harjoittelulla ruudunlukijasta tulee nopeasti tuttu työkalu, ja saavutettavuuden testaaminen sulautuu osaksi normaalia tekemistä.