A11ying with Sanna - Toki, jos voisin opas saavutettavuuteen

Koodin seuranta

Monet automaattiset saavutettavuuden tilaa seuraavat työkalut seuraavat koko sivuston tilannetta kaikista näkökulmista. Vaikka nämä työkalut huomaavatkin myös koodissa tapahtuvia virheitä, suosittelen seuraamaan koodin saavutettavuuden tilaa erikseen. Tämä lähestymistapa yleensä nopeuttaa ongelmien korjaamista, koska useimmiten aivan jokaisella tiimin jäsenellä ei ole edes pääsyä automaattisen työkalun näkymiin. Sen sijaan, että odottaa koodin puutteista raporttia, koodin laatua tarkkailevat työkalut tuovat ongelmat heti koodaajalle näkyviin. Koodin saavutettavuuden seurantaan on monia työkaluja, kuten axe-code, Lighthouse ja Pa11y. Jos haluat automatisoida seurantaa, näitä voidaan käyttää versionhallinnan yhteydessä mm. GitHub Actionsina, Jenkinsillä tai GitLabin CI/CD-toiminnoissa.

Muista käyttää koodin validointityökaluja

Koodin validointi (linting) auttaa saavutettavuuspuutteiden huomaamisessa ennen kuin pusket uutta koodia versionhallintaan. Koodin validointityökalut on hyvä olla käytössä olit sitten aloitteleva tai kokenut saavutettavuusasiantuntija. Kaikki me teemme joskus virheitä ja automaattiset työkalut ovat olemassa juurikin sitä varten, että ne voivat huomata tällaiset virheet. Jos koodin validointityökaluja ei ole käytössä, kaikkien mukana olevien aikaa kuluu tarpeettomasti työkalujen normaalisti ilmoittamien puutteiden etsimiseen ja kommentointiin. Käytä ehdottomasti koodin validointityökalua, joka tarkastaa saavutettavuuspuutteita. Ja jos et vielä ole ottanut käyttöön koodin laatua seuraavia työkaluja, nyt on hyvä hetki ottaa nekin käyttöön!

Deque on julkaissut työkalun axe Accessibility Linter VSCodelle. Työkalu tarkastaa koodin saavutettavuutta. Työkalu toimii Reactin (JSX), React Nativen, Angularin, Vuen, HTML:n ja Markdownin kanssa. Tämä työkalu on täysin ilmainen, joten sen käyttämättä jättämiseen ei ole yhtäkään syytä.

Jos käytät ESLint-työkalua JavaScript-koodisi tarkastamiseen, siihen löytyy eslint-plugin-jsx-a11y, joka auttaa nimenomaan saavutettavuuspuutteiden löytämisessä. Axe-coresta on myös paketti Reactille. Kannattaa tarkastaa Dequen dokumentaatiot, siellä on kuvattu hyvin axe-coren käyttömahdollisuuksia. Deque pyrkii tekemään maailmasta saavutettavan paikan. Ja koska kyseessä kuitenkin on yritys, osalla heidän tuotteistaan on hintalappu. Eikä välttämättä mikään ihan pieni sellainen. Mutta ei huolta, jos rahan käyttö työkaluihin ei ole mahdollista mistä tahansa syystä, löytyy hyviä ilmaisia vaihtoehtoja myös. Jos joku väittää, että saavutettavuuden seuraaminen ei ole mahdollista käyttämällä ilmaisia työkaluja, hän yrittää saada sinut vain ostamaan jonkun tuotteen. Ilmaiset työkalut eivät tietenkään ole aivan yhtä laadukkaita kuin parhaat maksulliset, eli niiden kanssa on hyvä varautua tekemään hieman enemmän manuaalista työtä.

Saavutettavuus CI/CD-työnkulussa

Saavutettavuuden seuraamisen automatisointi CI-CD-työnkulussa (englanniksi continuous integration and continuos deployment voi olla kannattavaa. Jos testausta on automatisoitu, voidaan sen kanssa estää saavutettavuuspuutteita aiheuttavia koodimuutoksia. Tällä tavalla ei ole yhtä haitallista, jos joku tiimistä ei käytäkään paikallisessa ympäristössä tai työkaluissa olevia laadun seurannan työkaluja. Jos sinulla on mielessäsi hyviä ohjeita tai käytäntöjä tähän, ole yhteydessä esimerkiksi LinkedInin kautta. Haluaisin mielelläni kuulla hyvistä ja toimivista seurantakäytännöistä!