ADDQ Consulting

Förbättra dina skriptade tester genom inslag av utforskande testmetodik

Blogginlägg   •   Maj 19, 2014 10:31 CEST

Sitter du fast med skriptade tester?

Tester som testar samma sak varje gång du kör dem och därför inte hittar några nya buggar?

Tester som tar en massa tid att skriva, även fast de egentligen inte är speciellt avancerade?

Tester som allt som oftast är rätt tråkiga att utföra vilket gör att testaren som utför testerna inte fokuserar speciellt mycket vilket i sin tur kan leda till missade fel och förbättringar.

Att utföra testverksamhet är, eller i varje fall bör vara, en intellektuell, kreativ och inspirerande verksamhet. Har man en duktig testare och tillför dessa element får man allt som oftast en ännu bättre testare. Visst, det kan ta ett tag för testaren i fråga att svänga om från att följa en karta till punkt och pricka till att själv kunna rita kartan och fokusera på de områden med störst risk för affärsvärdet men för den långsiktiga verksamheten är detta en attraktiv väg att vandra.

Så hur kan man liva upp sina skriptade tester med inslag av utforskande testmetodik, om man nu fortfarande behöver ”skriptade” tester vill säga. Exempel på anledningar att fortsätta med ”skriptade” tester kan vara för att kunna leverera de mätetal som ledningen vill ha eller för att det är ett för stort steg att helt byta ut dessa mot rena utforskande tester.

Det lättaste sättet är i så fall att börja i liten skala genom att ta bort de ”lägsta nivåerna” i de skriptade testfallen och ersätta dessa med utforskande testning.

Ett exempel kan vara att ersätta:

  • skriv in dagens datum + ett år i datumfältet och verifiera att du får ett valideringsfel
  • skriv in ett datum med månad 13 och verifiera att du får ett valideringsfel
  • skriv in ett datum med dag 32 och verifiera att du får ett valideringsfel
  • ...etc.

med...

  • verifiera datumfältets valideringsfunktionalitet

Detta ”ersättningssteg” bör utföras som en liten ”session” på 5 till 15 minuter beroende på hur stort området är.

Med detta menas att man börjar med att ta någon minuter till att fundera igenom hur man ska testa, vad som ska prioriteras och eventuellt göra en snabb modell av området. Sedan testar man igenom funktionaliteten och dokumenterar det i form av en kort historia kring vad och hur testet har genomförts samt om något fel eller problem har identifierats.

Ett annat alternativ för att få lite variation på sina tester är att komplettera de skriptade testerna med några riktiga sessionsbaserade tester (Session Based Test Management, SBTM) inom prioriterade områden. Detta genomförs på samma sätt som de korta sessionerna men håller oftast på mellan 60 och 90 minuter och utav dessa avsätts cirka en femtedel till testdesignen.

Ett tips för testdesignen är att använda modellbaserad testdesign och att sedan stämma av dessa modeller med kravare och programmerare.

Allt som oftast visar det sig att även de får en del ah-ha upplevelser av att jobba på detta sätt. Och ju tidigare i processen vi som jobbar med test är med och bidrar desto bättre blir slutresultatet!

Så vilka egenskaper behöver man då för att kunna arbeta så här?

Ett genuint intresse för test räcker långt. Lägger man dessutom till ett öppet sinne och viljan att hitta fel och problem för att på så sätt säkerställa att slutanvändaren får en så bra produkt som möjligt, ja då är man hemma!

Kort om författaren

Mikael Ulander har jobbat med test och kvalitetssäkring i 10 år och har under tiden hunnit samla på sig en mängd kompetenser inom området. Han engagerar sig i diverse forum med fokus i den "agila" världen för att få möjlighet att vara med och utveckla test- och kvalitetssäkringsarbetet i framförallt Stockholmsområdet men även i Sverige. Mikael är även involverad i AddQs kurs "Test i Agila projekt".

Mikael Ulander på LinkedIn - AddQ, din partner för test