Perspective

Utforskande testning: Framtiden för programvarutestning

Shyam Ramanathan,

Global Delivery Director

Publicerad: juli 5, 2022

Automatiseringen gör djupa, långa framsteg. I mjukvarutestning och kvalitetssäkring (QA) har det blivit en viktig komponent. I takt med att tekniken utvecklas ökar också behovet av automatisering. Det kommer dock alltid att finnas ett behov av effektiv, icke-automatiserad testning.

Utforskande testning är ett utmärkt exempel.

Om de utnyttjas effektivt kan undersökande testning avsevärt förändra framtiden för testning och kvalitetssäkring. Termen "utforskande testning" myntades av Cem Kaner 1988. Som det ser ut idag innebär utforskande testning samtidig inlärning, design och utförande och ett beroende av enskilda testares engagemang för att avslöja fel som undviker andra analyser. Korrekt undersökande testning utför grundliga end-to-end-analyser som avslöjar oväntade beteenden. Sessionsbaserad testning dokumenterar ansträngningarna för undersökande testning.

Som en typ av riskbedömning gör undersökande testning följande:

1. Ställer in befraktning. Befraktning etablerar ett tydligt uppdrag för en testsession. Testare definierar uppdragets omfattning genom att undersöka och ställa frågor om användarberättelsen.

Ett exempel på befraktning är att köra säkerhetshackar i inloggningsfältet för att identifiera eventuella sårbarheter.  Detta kan uppnås med Pomodoro-tekniken:

  • Bryt ner testet i tidsrutor.
  • Fokusera på testet i 25 minuter – ta bort eventuella distraktorer, inklusive e-post, sociala medier osv.
  • I slutet av testet, ta fem minuter att reflektera.

"Målet" är vad du utforskar. Det kan vara en funktion, ett krav eller en modul. Resurser kan vara datauppsättningar, tekniker eller oberoende funktioner. När det gäller information kan du ställa dig själv följande frågor:

  • Vad planerar du att hitta?
  • Letar du efter några standardöverträdelser eller helt enkelt kartlägger prestanda, säkerhet och funktionalitet?

2. Identifierar de konstanta variablerna och belyser eventuella avlägsna omständigheter. Genom att kommunicera med dina intressenter om utforskande testtekniker kan du göra en lista över de saker som ska hända och de saker som aldrig borde hända. Se till att ställa rätt frågor ("Hur gick testprocessen? Vilka var riskerna?") för att på lämpligt sätt logga defekter.

3. Upprättar heuristik. Heuristik är praktiska problemlösningsmetoder som genererar en fungerande lösning, hur ofullkomlig den än är. För att upprätta heuristik bör testare:

  • Prioritera att testa de viktigaste och mest riskfyllda objekten. Undvika överskriptning: Detta är också nyckeln till sessionsbaserad testning. Testare måste tänka kreativt, out-of-the-box och obundet till ett fast manus eller regelbok.
  • Utmana dina förväntningar på processen. Gå bortom dina basfunktioner och testa även underförstådda krav. Genom att göra det kommer du att ha slutanvändarens perspektiv i åtanke under hela processen. Genom att samarbeta med utvecklingsteam under testningen ser du till att testinsatserna uppnår sitt fulla värde. Kvalitetssäkring är hela teamets ansvar.
  • Aktivera snabb feedback: Skapa en konstant kommunikationslinje mellan utvecklings- och QA-team. Testdesignen bör innehålla alternativ för omedelbar feedback för utvecklingsteamet. Skapa grundlig granskningsdokumentation: Utför peer-granskningar och externa granskningar under testningen för att utvärdera dokumentationens kvalitet.

4. Ökar testtäckningen. Även om det är praktiskt taget omöjligt att ta itu med alla scenarier under testningen, kommer undersökande testning att identifiera och åtgärda luckor. För att säkerställa konsekvent och adekvat testetikett måste testare dokumentera de återstående defekterna vid slutet av varje session. Dessutom bör en efteranalys identifiera varför dessa defekter inte identifierades från början. Analysen bör identifiera en lösning för att förhindra framtida defekter och ta itu med framtida problem.

Slutsats

Arbetstagarna är förståeligt nog oroliga för den artificiella intelligensens och robotteknikens förmåga. Medan artificiell intelligens är redo att ersätta vissa mänskliga arbetare, kommer utforskande testning att ligga utanför automatiseringens räckvidd. Robotar, hur skickliga de än är, kan inte ersätta repliktänkande och gott omdöme. När du utforskar möjligheterna till undersökande testning säkerställer du anställningstrygghet långt in på21-talet .

Shyam Ramanathan

Global Delivery Director

Shyam Ramanathan har arbetat i IT -världen i över 21 år, där han har utvecklat en bred kunskap och erfarenhet inom programhantering, kravanalys, kravgranskning, modellering av användningsfall, projektplanering, testdesign, testkörning och etablering av globala leveranslag över hela geografin och bygga Center of Excellence.

Läs mer

Relaterat innehåll