how tester can think
Scene : I en restaurant ankom en familie på 3 - forældre og et lille barn. Efter at have bestilt den mest foretrukne pizza, slappede familien af, og det lille barn begyndte at lege med spisepindene lagt på bordet. Han kunne lide dem og besluttede kun at spise sin middag ved hjælp af spisepinde.
Han meddelte sit ønske, og forældre, optaget i at tale, var enige om det. Da pizzaen blev serveret, begyndte barnet at bruge spisepinde og mislykkedes flere gange med at få pizzaen i munden. Pludselig bemærkede forældrene det og beordrede barnet til ikke at bruge spisepinde. Lille barn overbeviste ikke, da forældrene allerede var enige om hans ønske tidligere.Da forældre begyndte at undervise i at spise pizza kun med kniv og gaffel, satte lille barn spørgsmålstegn ved troen, men jeg vil kun spise den med spisepinde, og hvorfor er det forkert? Og mens han brugte spisepinde, da han ikke var i stand til at spise sin yndlingspizza, blev han utålmodig og kastede i sidste ende spisepindene væk og besluttede også at ikke spise pizza. Forældre, også frustrerede, kunne ikke gøre noget, og familiens middagstid viste sig som den værste tid på dagen.
Udskift nu nogle ord i ovenstående para som følgende og tænk over det igen:
Forældre: Projektledelsesteam inklusive forretningsanalytiker, sælger, udviklingschef og arkitektonisk team.
Lille barn: Kunde / slutbruger
Pizza: produkt / applikation
Spisepinde: fejl
Den mest foretrukne applikation er kun favorit, indtil brugeren ikke laver en fejl og ikke ser programmets værste opførsel. Når brugeren er erfaren, kommer han aldrig tilbage til applikationen. Og derfor er det som tester meget nødvendigt at forstå brugerens tankegang , hvordan han forventes at opføre sig, hvad forkert han kan gøre med applikationen, hvad der kan være den værste fejltagelse og meget mere.
Det meste af tiden er jeg blevet spurgt i fora såvel som af interne teammedlemmer om, hvordan man replikerer brugerens oplevelse under test. Mit svar har altid været simpelt - Vær bruger :)
Selvom det er let at sige end implementere, er det det rigtige tidspunkt for softwaretestindustrien at bevæge sig i retning af revolution, hvor brugeroplevelse og feedback er vigtigere end noget andet.
Hvordan en tester kan tænke som slutbruger?
Her præsenteres nogle typiske eksempler på at opføre sig som slutbruger og finde overraskelser , Har jeg observeret de sidste par dage:
# 1) Under test af et datofelt, da en bruger valgte eller manuelt indtastede den korrekte datoværdi, fungerede det fint. Men da brugeren endte med at indtaste en helt forkert værdi som 12/00 // og klikkede på OK, fik han en fejlmeddelelse om ugyldig datoværdi.
Nu retter brugeren ikke datoen, men opdaterer siden. Hvad skal der ske? Mange af jer kan gætte hvad der skal ske, men kan I tænke på, hvad der skete med applikationen? Efter opdatering af siden blev en bruger præsenteret for følgende, og den samme værdi blev også gemt i en database.
Så ... testeren har replikeret brugeren herovre, aftalt?
#to) Under test af en ansøgning, hvor workflowet skal indsende forskellige formularer i særlig rækkefølge, hvis de fulgte ordren, fungerede det fint. Men hvad nu hvis brugeren forsøgte at gå tilbage til formular nr. 3, fra formular nr. 5?
Igen i stedet for at tænke på, hvad der skal ske, lad os se, hvad der skete ...
Tester var forbavset, men følte stolthed over at vise sig selv som bruger ... ..en enig?
# 3) Efter vellykket login klikker brugeren på knappen Tilbage i browseren. Lad os igen se, hvad der skete ...
Oplysningerne skulle have ryddet op, men det gjorde det ikke. Ved at gå videre på denne login-side klikker en bruger på Glemt dit kodeord-link. Vær klar over, at brugeren allerede var logget ind og havde været på login-siden ved at klikke på knappen Tilbage i browseren. Kliket på Glemt din adgangskode navigerede brugeren til applikationens startside.
Testeren henvendte sig til brugeren ... ..Aftalt?
# 4) Efter at have observeret URL'en til søgesiden (http: //x.x.x.x: y / # / Search) for applikationen, ændrede testeren URL'en som http: //x.x.x.x: y / # / Søg / test? og kan du tænke, hvad der ville være sket?
Applikationen styrtede ned, og igen vendte testeren sig til brugeren ... Jeg håber ikke, du er uenig.
Konklusion
Jeg antager, at jeg via disse eksempler har formidlet nok af det, jeg ville.
c ++ char til int
Virkelig betyder test ikke at kontrollere workflowet i applikationen, og det betyder heller ikke at bryde applikationen, men det betyder det bestemt også tjek brugerens oplevelse selv når han laver fejlene.
Om forfatteren: Dette indlæg er skrevet af STH-teammedlem Bhumika Mehta. Hun er projektleder med 10+ års erfaring inden for softwaretest. Hun værdsætter også gode ideer og innovationer og risici. Og selvfølgelig hader monotont arbejde, mennesker og miljø.
Og ja, lad os vende testeren til os selv til slutbruger .... Enige? :)
Så ... vi vil gerne høre flere eksempler som disse fra dig og vil også gerne have dine meninger.
Anbefalet læsning
- GUI Testing Tutorial: A Complete User Interface (UI) Testing Guide
- Test af webstedscookie og testtilfælde til test af webapplikationscookies
- Brugergodkendelse i MongoDB
- Test af e-mail-validering: Sådan testes en applikations e-mail-funktionalitet
- Money Making, software test karriere og hemmeligheder fra en rigeste tester
- 5 ting, en nybegynderudvikler (og tester) bør vide om softwaretest
- Bedste softwaretestværktøjer 2021 (QA Test Automation Tools)
- Ad-hoc-test: Sådan finder du mangler uden en formel testproces