Hopp til innholdet

Bra nok med automatiske tester?

Tommy Olsson, Illustrasjon.

Forfatter: Tommy Olsson

Ekspert på universell utforming av ikt

tommy.olsson@useit.se

Lesetid 12 minutter

Artikkel

I dag regnes det som en selvfølge å kvalitetssikre, og teste, at kravene til universell utforming blir møtt ved utvikling av nye digitale tjenester. Nå er det mye nytt og spennende på gang, lista har blir satt høyere, og testene har flere punkter de kan fange opp for å få et mer tilfredsstillende resultat.

Her vil vi gå igjennom litt basics: Når og hvordan skal vi teste mest hensiktsmessig for universell utforming?

De tre hovedmetodene av akseptansetester er:

  • Automatiske testverktøy
  • Manuelle tester
  • Brukertester.

Vi skal nå se på de tre metodene hver for seg, og deretter drøfte hvordan vi kan kombinere dem for best effekt.

Automatiske testverktøy

Det finnes ulike typer av mer eller mindre automatiske testverktøy:

  1. Nettbaserte verktøy (eksterne eller interne).
  2. Serverbaserte verktøy (vanligvis interne).
  3. Lokalt installerte verktøy.

Nettbaserte tjenester for test av universell utforming

Nettbaserte testtjenester eies vanligvis av en leverandør og ligger på leverandørens server, men det finnes også varianter som er mulig å installere på egen server for å slippe å sende følsomme data utenfor organisasjonen. Av praktiske grunner er nettbaserte testverktøy vanligvis bare mulig å bruke for å teste nettsteder; ofte bare offentlige uten innlogging. Apper blir ikke drevet fra servere, så de trenger helt andre metoder.

De nettbaserte tjenestene fungerer vanligvis slik at en bruker initierer testen angir søkeveien til en side å granske, eller gir adressen til et helt nettsted der verktøyet tester et utvalg sider. Verktøyet viser resultatet direkte på skjermen, eller genererer en rapport som brukeren kan laste ned. Denne typen testverktøy egner seg best for stikkprøvetesting, når det er passende.

Serverbaserte verktøy

Serverbaserte testverktøy er vanligvis installert på servere innen organisasjonen, men det finnes også eksterne abonnementstjenester. Det finnes verktøy som gratis, åpen programvare, og det finnes kommersielle produkter i varierende prisklasser. I likhet med nettbaserte verktøy er disse normalt begrenset til å teste nettsider.

Serverbaserte verktøy er godt egnet for kontinuerlig testing, men går ofte an å bruke for sporadiske tester også. De kan ha funksjoner for å regelmessig overvåke alle sider på et helt nettsted. Enkelte kan inngå i leveransekjeden ved continuous delivery, for å kvalitetssikre alt innhold innen det leveres til produksjonsmiljø. Ved overvåking eller leveransekontroll genererer verktøyene rapporter, som kan sendes automatisk til aktuelle personer via e-post.

Enkelte verktøy i denne kategorien kontrollerer også kvalitet utover universell utforming, som rettskriving, brudd på lenker og svartider.

Lokalt installerte verktøy

Enkelte verktøy der funksjonene ligner de serverbaserte, er mulige å installere lokalt på eksempelvis utvikleres PCer. I denne kategorien inngår testfunksjoner for universell utforming, som finnes i integrerte utviklingsmiljøer for apper.

Lokale verktøy egner seg først og fremst for testing gjennom utviklingsfasen, spesielt for apper.

Fordeler og ulemper med automatiske testverktøy

Den store fordelen med automatiske verktøy er at de er raske og kan analysere store mengder av nettsider og dokumenter, eksempelvis kontinuerlig overvåking av et nettsted.. Det kreves ingen spesiell kompetanse for å bruke verktøyene, men derimot for å forstå rapportene som blir generert av koden. Verktøy er også gode på å finne feil i koden som bygger opp siden (vanligvis HTML, CSS og JavaScript). Slike feil har en tendens til å drukne i mengden av data, så menneskelige testere har lett for å overse dem.

Ulempen er først og fremst at bare en liten brøkdel av kravene til universell utforming er mulige å teste helt automatisk. Og kravene til universell utforming er også begrenset til å dekke behov som er mulig å verifisere noenlunde objektivt . Mange verktøy indikerer mistenkte avvik, som deretter må undersøkes manuelt. Automatiske verktøy kan altså advare for sannsynlige feil, men kan aldri ”godkjenne” et grensesnitt. Et tilsynelatende perfekt resultat fra en automatisk test innebærer ikke at tjenesten er universelt utformet, men at de vanskelige feilene og avvikene gjenstår å finne. Artificial Intelligence (AI) kan komme til å forandre dette bildet etter hvert.

Manuell testing av universell utforming

Å manuelt teste universell utforming på nettsted, e-tjenester og apper er et håndverk som krever kompetanse, nøyaktighet og tålmodighet. Veldefinerte rutiner er til stor hjelp, og kan gjøre det mulig også for personer uten ekspertkompetanse å utføre de fleste tester.

Det grunnleggende for strukturert, manuell testing er en eller annen form for testmanual, eller sjekkliste, å følge. For å verifisere overensstemmelse med lovkravene, kan dette innebære nærmere hundre kontroller per side, og for å verifisere at det faktisk fungerer for virkelige brukere kreves enda mer. Det er umulig å dekke alt om man tester på måfå: det kreves struktur.

Det kan være fordelaktig å kombinere manuell testing med noe automatisk, som nettlesertillegg. Resultatet kan være mulig å bruke for å fokusere den manuelle testingen til de mest problematiske delene av innholdet. Da kan gjøre verktøyet en første analyse av en nettside og flagge for enkelte typer av feil. Andre typer tillegg assisterer testeren på ulike måter, for eksempel gjennom funksjoner for å lukke JavaScript eller CSS, vise bilders alt-tekster, øke tekstavstand, og så videre.

Det finnes også tillegg og programmer som kan beregne kontrastforholdet mellom to farger, eller utføre andre komplekse beregninger, som kreves for å kunne verifisere de mer tekniske kravene. Nettlesernes innebygde utviklerverktøy er en annen uvurderlig hjelp for testere. De kan for eksempel visualisere informasjon, som nettleseren formidler til hjelpemiddel. En viss kompetanse behøves for å kunne tolke resultatet.

Manuell testing bør skje i ulike faser av utviklingen. Utviklerne som bygger koden må utføre enkelte kontroller for å sikre at resultatet fungerer med hjelpemiddel, en slags grunnleggende verifisering av at alle funksjoner er mulig å bruke med tastaturet. Når utviklerne har levert må systemtestere i gang og kontrollere at de ulike komponentene fungerer sammen på en konsekvent måte. De bør også helst kunne utføre en del tester med hjelpemidler.

Når det gjelder vanlige, statiske nettsider er det ofte kommunikasjonsarbeidere eller nettredaktører som står for produksjonen, og det finnes sjelden tildelte testere. Den som skaper innholdet, må derfor kunne utføre elementære tester selv. Tester av innhold er ikke så krevende som tester av interaktive funksjoner, men er minst like viktige.

Tjenester og ikke-trivielt innhold må vi teste med ulike hjelpemidler, som skjermleser (for svaksynte og personer med lesevansker), punktskriftsdisplay (braille-leser), forstørrende hjelpemidler og stemmestyring.

Enkelte av disse hjelpemidlene krever mye tid og anstrengelse å lære seg å beherske, og det kan være vanskelig å oppnå, og opprettholde, denne kompetansen om man ikke bruker verktøyet i hverdagen. Derfor bør vi helst la dagligbrukere av hjelpemiddelet utføre denne typen av tester. Dersom det ikke finnes noen innenfor egen organisasjon, kan vi få hjelp av eksterne brukere. Det handler midlertidig fortsatt om samme typer av detaljerte tester, ikke om brukertester som vi snart skal se på.

Fordeler og ulemper med manuelle tester

Den viktigste fordelen er at manuelle tester kan finne alle typer problemer knyttet til universell utforming, ikke bare de som er mulig å verifisere maskinelt. Et ordtak sier at det som skal forstås av maskiner skal testes av maskiner, men det som handler om mennesker må testes av mennesker.

Ulemper med manuelle tester er at de krever god kompetanse hos dem som tester og at testene er tidskrevende og mentalt utfordrende. Et menneske orker knapt å teste universell utforming i åtte timer per dag. Det er også lett for en menneskelig tester å gå glipp av små feil, spesielt i innhold som ikke alltid er synlig, for eksempel utfellbare avsnitt. En ulempe akkurat nå er at det er en svært stor mangel på kompetente UU-testere i Norge.

Brukertester

Automatiske og manuelle tester har ofte fokus på detaljer. Detaljer er viktige, men vi må ikke glemme helheten, og her kommer brukertester inn i bildet.

Brukertester innebærer at vi tar hjelp av ”vanlige” brukere for å kontrollere om det vi har produsert faktisk fungerer for målgruppen. Testerne bør være representative for målgruppen, og det inkluderer naturligvis personer med ulike typer av nedsatt funksjonsevne – fysiske som kognitive.

Ved brukertester kan man fokusere på suksesskriterier, som at en komponent fungerer med et konkret hjelpemiddel, men også på mer overordnede spørsmål i det som kalles brukeropplevelsen. Forstår brukerne intuitivt hva de skal gjøre, eller trenger de instruksjoner? Forstår de instruksjonene? Føler de seg trygge eller usikre i bruken av tjenesten?

Det er vanlig å filme brukerne når de utfører testene, så brukerne får teste uforstyrret, for å kunne analysere interaksjons­mønster og brukerstrategier i etterkant. Brukerne blir bedt om å ”tenke høyt” for at de som studerer filmen enklere skal forstå hvorfor brukeren handlet på en annen måte enn hva designere og utviklere hadde tenkt.

Fordeler og ulemper med brukertester

Brukertester har den åpenbare fordelen at de faktisk tester hva som fungerer for virkelige, levende mennesker, med individuelle variasjoner, i stedet for å verifisere teoretiske lovkrav.

En ulempe er at praktiske brukertester ikke er mulig å utføre før det finnes noe å teste, som i blant kan være sent i utviklingsprosessen. Konsekvensen er at brister som oppdages sent kan bli dyre å utbedre. Brukertester er også ressursintensive: det trengs dels brukere som utfører testene, dels testledere som instruerer og hjelper, dels oppfølging og analyse. Setter vi sammen gruppene innenfor hvert testtilfelle medfører det administrasjon og lange ventetider. Det kan dessuten være vanskelig å få på plass representative grupper, spesielt på mindre steder i vårt langstrakte land.

Som vi nevnte over: alle krav til universell utforming er målbare og objektive. De er formulert som suksesskriterier, og man har gode metoder klare for å oppnå dem. Feilene som blir gjort er jo aldri «du har gjort denne lenken utilgjengelig for brukerne». Resultatet av testen er; «Denne lenken trenger et label for å være tilgjengelig».
Når vi i Useit tester, er resultatet av testen en pekepinn på hvordan suksesskriteriet kan oppnås med integriteten til produktet intakt.

Flere artikler

Kontakt

Er du interessert i våre tjenester eller har du spørsmål? Ta kontakt med Daniel så forteller han deg mer!

Postkasse som mottar hvite flygende brev i torrent.