I User Acceptance Testing (UAT) testes software af de rigtige brugere i deres lokaler. Det kaldes også for andre navne som f.eks. betatest og slutbrugertest. Den udføres grundlæggende for at bekræfte, at det udviklede system er i overensstemmelse med de brugerkrav, der blev delt med udviklerne, inden udviklingen af systemet startede.

Hvad er brugeracceptancetest?

Det er en type test, som udføres af rigtige brugere i den sidste testfase, inden produktet eller applikationen frigives i produktionsmiljøet eller på markedet.

Miljøet, der bruges til at udføre brugeracceptancetest (UAT), svarer til produktionsmiljøet og er ikke udviklingsmiljøet.

Tjekliste for brugeraccepteringstest (UAT)

Det er vigtigt at sikre, at følgende faser og deres testaktiviteter er dækket som en del af brugeraccepteringstesten for at sikre optimale resultater af UAT.

  1. Initiering af brugeracceptancetestprojektet
  2. Planlægning af brugeracceptancetestning
  3. Udformning af brugeracceptancetestning
  4. Udførelse af brugeracceptancetestning
  5. Udgivelsesbeslutninger
  6. Aktioner efter brugeracceptancetestning

Aktiviteter, der er en del af hver af de ovennævnte faser, er angivet nedenfor.

Initiering af brugeraccepteringstestprojektet

De følgende aktiviteter bør ideelt set udføres som en del af initieringen af UAT-projektet.

  1. Identificer de vigtigste interessenter
  2. Vælg en teamleder
  3. Kommunikér forretningsintentionen, mål og acceptkriterier for systemet
  4. Aftal om teamets ressourcer til brugeraccepteringstestning
  5. Aftal om dokumentation til støtte for brugeraccepteringstestning
  6. Aftal om beslutningsstrukturer
  7. Aftal om beslutningstagningsstrukturer
  8. Aftal om om teamet for brugeracceptetestning
  9. Initiér træning i brugeracceptetestning
  10. Formér en indledende projektplan for brugeracceptetestning

Planlægning af brugeracceptetestning

Ved planlægningen af UAT, bør nedenstående opgaver udføres.

  1. Identificer metoden til systemanskaffelse for at bestemme den bedste tilgang til Brugeracceptancetestning.
  2. Det skal bestemmes, om forretningsintentionen og brugernes forventninger er blevet fanget og er målbare.
  3. Verificer, at forretningskravene er blevet fanget.
  4. Kontroller, at alle kravstyper er medtaget.
  5. Skriv acceptkriterierne, og kontroller, at de er hensigtsmæssige.
  6. Sørg for, at omfanget er klart og relevant.
  7. Fang og kontroller forretningsprocesserne.
  8. Evaluer den nuværende dokumentation og dens bæredygtighed til at tjene som testgrundlag.

User Acceptance Testing Design

Det er vigtigt at sikre, at testdesignet til UAT følger nedenstående trin for at sikre, at UAT’en giver det ønskede resultat.

  1. Opret indgangskriterierne for brugeracceptancetestning.
  2. Gennemgå testskripter, hvor de er tilgængelige.
  3. Fastlæg brugeracceptanceteststrategien.
  4. Gennemgå eksisterende testbetingelser, hvor de er tilgængelige, og skriv nye.
  5. Gennemgå eksisterende testcases, hvor de er tilgængelige, og skriv nye baseret på testbetingelser.
  6. Skriv testskripter baseret på testcases.
  7. Sørg for, at testene dækker alle krav.

User Acceptance Testing Execution

De nedenstående opgaver skal udføres som en del af UAT-testudførelsen.

  1. Kontroller tilgængeligheden af testmiljøet.
  2. Formuler testplan på højt niveau i forhold til brugeracceptanceteststrategien for at opnå prioriteter.
  3. Formuler detaljeret testplan for at opnå den bedste udnyttelse af ressourcerne.
  4. Sørg for, at testloggen holdes ajour.
  5. Sørg for, at hændelser rapporteres korrekt og i god tid.
  6. Kontroller jævnligt med udviklingsteamet om løsning af fejl og sikrer, at der ikke er nogen flaskehalse.
  7. Generer regelmæssige testoversigtsrapporter.

User Acceptance Testing Release Decisions

De følgende punkter vil hjælpe teamet med at beslutte, om det skal gå videre med udgivelsen eller ej efter UAT’en.

  1. Identificer status i forhold til acceptkriterierne.
  2. Identificer den indsats og tid, der kræves for at opfylde acceptkriterierne i detaljer.
  3. Undersøg alternativer baseret på udestående risici.
  4. Nødfrigivelseskriterier for at muliggøre kontrolleret frigivelse.
  5. Rapportere status til de vigtigste interessenter med alternative forslag til frigivelse.
  6. Udarbejde rapport om afslutning af brugeraccepteringstest med anbefalinger.

Aktioner efter brugeraccepteringstest

Nedenstående aktiviteter skal udføres efter afslutningen af UAT.

  1. Udformning og plan for brugeruddannelse.
  2. Post release support.
  3. Kontinuerlig testning
  4. Post User Acceptance Testing-rapport med ofte stillede spørgsmål osv.

Best Practices for User Acceptance Testing

Kend de brugere, der i sidste ende skal bruge softwaren

Kend din målgruppe. Hvad er deres problemer/behov? Hvad er deres motivation? Hvordan kan du nå dem? Når du har alle disse oplysninger, inden du påbegynder brugeracceptancetesten, sparer du spildte kræfter og hjælper dig med at få målrettede resultater.

Forbered planen for brugeracceptancetesten i god tid

Overvejende udføres brugeracceptancetesten før lanceringen af softwaren på markedet, og på dette tidspunkt er du allerede under pres for at overholde tidsfristerne og er spændt på slutbrugerens reaktion på din software, og derfor kan planlægning af brugeracceptancetesten på dette tidspunkt resultere i, at du går glip af nogle af de hyppigt forekommende virkelige brugssituationer. Ressourcetilgængelighed kan også være en begrænsning i denne fase.

Velstruktureret styringssystem for brugeracceptancetest

Velstruktureret styringssystem for brugeracceptancetest er et system, der indeholder nemme filtreringsmuligheder, effektiv rapportering, sporbarhedsmatrix, fejlsporingsfunktioner og sikkerhed.

Skab scenarier baseret på forretningskrav

Det er altid en god praksis at udarbejde testscenarier baseret på forretningskravene for at målrette slutbrugeren.

Den klare definition af acceptkriterier

Hvorvidt produktet er godkendt eller mislykket efter udviklingen afgøres af acceptkriterierne, så det er bedst at definere acceptkriterierne klart.

Fase, hvor brugeraccepteringstest udføres

Der er mange måder at udvikle et system på, men groft sagt inddelt i 2 kategorier:

  1. Sekventiel udvikling
  2. Iterativ udvikling

Sekventiel udvikling

Sekventiel udvikling anvender en sekvens af udviklingsfaser, der typisk følger en V-form. UAT er det endelige testniveau, der tester det færdige system i forhold til forretningskravene.

Iterativ udvikling

I en iterativ tilgang (som f.eks. agil udvikling) finder design og testning sted i korte sprints, og systemets funktionalitet bliver således tilgængelig gradvist ved slutningen af hvert sprint. UAT vil være påkrævet før udrulning af hvert sprint.

Approach for brugeraccepteringstest

UAT-approach er baseret på 3 elementer:

  1. Business krav
  2. Business processer
  3. Brugers forventninger

Der bør være en tilgang, der følger disse 3 elementer.

Kravbaserede testcases

Testcases skal dække forretningskravene, hver testcase skal være knyttet til et specifikt krav baseret på et ID-nummer. Testcases kan skrives kort tid efter, at kravspecifikationen er defineret, og det kaldes kravdrevne testcases. Ulempen ved denne fremgangsmåde er, at hvis kravene indeholder fejl, så vil testcases også gå galt.

Gennemgangsprocesbaserede testcases

Gennemgangsprocesbaserede testcases skrives for at sikre, at det system, der leveres, vil fungere specifikt til at understøtte forretningsprocesserne. Testcases skal kunne vise, at kravene er blevet opfyldt på en måde, der afspejler, hvordan organisationen vil bruge systemet.

Brugergrænsefladedrevne testcases

Brugergrænsefladedrevne testcases er struktureret omkring formularer eller skærmbilleder, der skal udfyldes. Testcases er baseret på dataindtastning, interaktioner via skærmen og rapportering. Brugergrænsefladedrevne testcases kan være indlejret i forretningsprocesbaserede testcases, hvor forretningsprocessen involverer dataindtastning, interaktion eller rapportering.

Stilling af prioriteter gennem risikobaseret testning

UAT udføres normalt under pres, fordi det sker lige før systemet frigives til slutbrugerne, så de kan bruge det, så der er behov for at finde en måde at gøre det bedst muligt inden for den begrænsede tid, der er til rådighed. Til dette formål anvendes en prioriteringsteknik til at køre de vigtigste tests først, således at enhver test, der ikke er færdiggjort, er mindre vigtig end den, der er afsluttet. Dette kaldes risikobaseret testning.

Risikoniveauet for hvert krav identificeres, og kravene sorteres efter prioritet.Risikobaseret testning kan bruges sammen med andre metoder.

For eksempel

Risikobaseret testning kan indgå i kravbaseret testning for at sikre, at de vigtigste områder testes først.

Hvis systemet gør, hvad der kræves, men mangler en detaljeret del af den tekniske specifikation, skal dette resultat rapporteres, men det er ikke en “show-stopper”.

På den anden side, hvis systemet opfylder hver eneste del af den tekniske specifikation, men det er besværligt at bruge, er det en kilde til bekymring.

Eksempler på brugeracceptancetestning

Alle programmer fra ethvert domæne som f.eks. bilindustrien, rejse/turisme osv. bør gennemgå en ordentlig brugeracceptancetest, før de leveres til produktion.

Sæt, der er et program til sporing af mobile enheder, hvor en administrator administrerer mobile ressourcer, og det er en webbaseret applikation. Den har gennemgået mange forskellige former for testning såsom funktionel testning, integrationstestning, systemtestning, præstationstestning osv. og nu kommer turen til det vigtigste testniveau, og det er brugeracceptationstestning. Ideelt set bør den udføres på to niveauer:

Alpha-testning

Denne type brugeracceptationstest udføres af testerne hos udviklerne for at kontrollere for eventuelle sidste problemer, inden softwaren leveres til slutbrugerne til betatestning.

Betatestning

Den udføres af slutbrugerne i deres lokaler og kontrollerer for eventuelle problemer, før softwaren frigives til produktion.

Slutning

Fordelen ved brugeracceptancetestning er, at der ikke vil være nogen overraskelser, når produktet frigives til produktion/marked til egentlig brug.

Andre populære artikler:

  • Hvad er Acceptance testing eller User Acceptance Testing (UAT)?
  • Hvad er Acceptance Test-Driven Development in Agile Methodology?
  • Hvad er testpyramide og testkvadranter i agil testmetodologi?
  • Hvad er projektarbejdsprodukter i agil testning?
  • Hvad er brugssagstest i softwaretestning?

Skriv et svar

Din e-mailadresse vil ikke blive publiceret.