Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Tour testing – Utflyktstester
1. Tour testing – En rolig metod för att
få styrning och mål i dina
utforskande tester
Erik Olsson
erik.olsson@konsultbolag1.se
2. Agenda
• Utforskande tester – Min passion
• Risker med Utforskande tester
• Problem med andra typer av tester
– Manuella testfall
– Automation
• Tour testing – The salvation
– Grundpelarna
– Fördelar
• Mina erfarenheter
2
3. Min definition av UT
”Ett test som utförs där man litar på att testaren
utifrån erfarenhet, kreativitet, frihet och egna
beslutsförmåga kan komma fram till det bästa
testet utifrån en testidé.”
3
4. Risker med traditionell UT
• ”Ja men vi kör utforskande tester vi…!”
– No, you dont…
• Bristande struktur och mål
• Ingen dokumentation
• Ingen spårbarhet
• Inte repetitivt!
• Hur vet du när du är klar?
• Simpel Ad-hoc testing
4
5. Risker med traditionell UT
5
Ensidig testing
• Endast positiva
• Kravbaserade
– Checking!
– Är kraven heltäckande?
– Är kraven ens bra?
Low coverage
6. Turistmetaforen
Den planlösa (utforskande) turisten
– Första gången i London
– Planlöst irrande
– ”Stöter på” sevärdheter
– Ingen förståelse
– Tiden rinner iväg
– Missar många sevärdheter
–Risk!?
6
7. Turistmetaforen
Den planerande turisten
– Första gången i London
– Läser på i Guideböcker, kollar
kartor, fixar valuta, Beställer
bord på restauranger, kollar
upp transportmedel,
evenemang
– Gör en detaljerad
dagsplanering
– Missar inga stora sevärdheter
– Missar den genuina
upplevelsen!
7
8. Risker med automation
• Jättebra för checking
• Bra att bygga negativa tester
med
• Övertro
• Svårtolkade resultat
• Ingen improvisation
• Hittar inte de udda buggarna
• Kommer aldrig kunna ersätta
den mänskliga hjärnan
8
9. Använd Tour testing istället…
Dela in mjukvaran i distrikt och åk på olika utflykter i distrikten
Districts Tours
9
10. Districts
• Olika områden i mjukvaran som kan behandlas på
ett likartat sätt.
– Syftet med funktionerna
– Användningsfrekvens
– Användningstid
– Arkitektur
– Användare/grupp
– Komplexitet
– You name it…
10
11. Districts
• Business district
– Where the business gets done!
• Historical district
– Gammal data, historiska register, gammal kod
• Hotel district
– Where does data sleep?
• Entartainment district
– Nice to have features
• Tourist district
– Vart håller nya användare till?
11
13. Exempel på tours
13
• Guide book tour
– Manualen är din bästa vän. Turista slaviskt efter den!
• Landmark tour
– Frekvent använda funktioner! Kärnfunktioner!
• Taxicab tour
– Taxichauffören kan alla gator i staden.
• Supermodel tour
– Utsidan räknas också!
• Couch potato
– Gör så lite som möjligt.
• FedEx tour
– Ett paket med data ska levereras
14. Exempel på tours
• All-nighter tour
– Sover verkligen systemet?
• Saboteur
– Brake it!
• Three hour tour
– Som det låter
• Morning-commute tour
– Vad händer vid uppstart?
• Multicultural tour
– Språk, tidzoner, datum
14
15. Tips & tricks
• Dela in systemet
• Flera distrikt kan gå in i
varandra
• Rita en karta!
• Hitta tours som passar
er!
• Modda tours
• Skapa nya tours
• Kombinera tours!
• Skapa en Tourmatris
15
16. Tips & tricks
• Skapa en testmatris
• Session-based testing
• Kombinera ihop tours
och distrikt (och
testare!)
• Team up!
• Testa utifrån risk
• Kör en omgång för att
fånga sånt som ni vet
att ni är dåliga på!
• Sätt mål!
16
17. MEN!
Se till att det dokumenteras!
–Skärminspelning
–Mindmaps
–Rubriker
–Testlogg
17
18. Mer bra…
• Sätter sig snabbt
• Igenkännande
beskrivningar som alla
kan förstå
• Går snabbt att komma
igång
– Börja med guidebook,
taxi cab, super model
• Skapar intresse
• Anpassningsbart till
gruppen/testaren
• Använd tourerna som
en checklista vid andra
tester
• Förenklar testledarens
arbete
• Roligt & motiverande!
18
Kul att ni valde mig!
Test är roligt!
Utforskande test är roligare!
Buggar är roligt! (inte de oupptäckta som kommer i drift..)
Tour testing är jätteroligt!
Tyvärr var det inte jag som kom på det…
James A. Whittaker
Boken: Exploratory Software testing
Vad är det som är så roligt med det?
Utnyttja sin fulla kapacitet.
Vara detektiven? Nosa upp buggar. Kräver förståelse som man skaffar sig under tiden. Utbildar sig själv!
Ensidiga tester. Man utgår från det man vet. Krav.
Människan är lat. Väljer bekanta vägar.
Skön känsla med genuin tutch på resan.
Vilka risker finns?
Köper hatt?!
Det här kan jämnföras med manuell scriptbaserad testning. Man tänker jätte mycket innan, och lite under testet. Jag vill ha ett motsatt förhållande!
Missar den genuina upplevelsen och möjligheten att följa en ingivelse.
Vill bara nämna snabbt.
Business- Kärnan, produktens MVP.
Använd/förbrukad data, historska filer arkiv
Hotel – vilande data
Couch potato – ta emd en chipspåse så ni hittar rätta känslan!
FedEx – Följ ett värde genom hela systemet. Förändringar, storlek, tillgänglighet, säkerhet?
All nighter – Lämna systemet på, hur reagerar det, kan funktioner gå under lång tid?
Saboteur – Try to brake it! ”How to brake software”
Three hour – Sätt ett mål. Kanske hur många buggar, vissa typer av buggar.
Moning commute. Vad händer vid uppstart av systemet?
Det går i princip att förklara tour testing på 10 minuter för VEM som helst!