Hur väljer jag vilket test som ska automatiseras?

Hur väljer du vilka tester som ska automatiseras och vilka tester som ska lämnas för manuell testning?

Innan du börjar automatisera ett test måste du se vilka fördelar du får genom att automatisera testet efter att du tar med tid, ansträngning och resurs som investerats i testautomatisering.

Nedan följer några faktorer som ska övervägas för att identifiera vilka manuella tester som bör eller inte bör automatiseras. Som det gamla ordspråket säger, bara för att du kan automatisera något betyder inte nödvändigtvis att du borde.

Här är några riktlinjer som hjälper dig att identifiera bra kandidater för testautomatisering:

Tester som ska automatiseras:

  • Företagskritiska vägar - funktionerna eller användarflödena som om de misslyckas orsakar verksamheten avsevärd skada.
  • Tester som måste köras mot varje build / release av applikationen, såsom röktest, sanity test och regressionstest.
  • Tester som måste köras mot flera konfigurationer - olika OS & webbläsarkombinationer.
  • Tester som utför samma arbetsflöde men använder olika data för sina ingångar för varje testkörning, t.ex. data driven.
  • Tester som involverar inmatning av stora datamängder, som att fylla i mycket långa formulär.
  • Tester som kan användas för prestandatestning, som stress- och belastningstester.
  • Tester som tar lång tid att utföra och kan behöva köras under pauser eller över natten.
  • Tester under vilka bilder måste tas för att bevisa att applikationen beter sig som förväntat eller för att kontrollera att en mängd webbsidor ser likadana ut i flera webbläsare.

Generellt sett, ju mer repetitiv testkörning, desto bättre är det för automatisering.

Kom också ihåg att test inte är de enda kandidaterna för automatisering. Uppgifter som att ställa in eller skapa testdata för manuell testning är också bra kandidater för automatisering.



Tester som inte ska automatiseras:

  • Testar att du bara kör en gång. Det enda undantaget från denna regel är att om du vill utföra ett test med en mycket stor uppsättning data, även om det bara är en gång, är det vettigt att automatisera det.
  • Användarupplevelsestester för användbarhet (tester som kräver att en användare svarar hur enkelt appen är att använda).
  • Tester som måste köras ASAP. Vanligtvis kräver en ny funktion som utvecklas en snabb återkoppling så testa den manuellt först
  • Tester som kräver ad hoc / slumpmässig testning baserat på domänkunskap / expertis - Exploratory Testing.
  • Intermittenta tester. Tester utan förutsägbara resultat orsakar mer buller det värdet. För att få bästa möjliga utbyte av automatisering måste testerna ge förutsägbara och tillförlitliga resultat för att skapa godkända och misslyckade förhållanden.
  • Tester som kräver visuell bekräftelse, men vi kan ta sidobilder under automatiserad testning och sedan göra en manuell kontroll av bilderna.
  • Test som inte kan vara 100% automatiserat borde inte automatiseras alls, såvida det inte sparar mycket tid.