Vad är ett automatiserat testverktyg?
Precis som en fysisk produkt testas för att kontrollera om den uppfyller önskat beteende och specifikationer, så testas också programvaran. Programvarutestning kan göras manuellt av människor eller med hjälp av verktyg. Ett automatiserat testverktyg är en mjukvara som används för att testa målprogramvaran, det vill säga programvaran som beaktas. Ett sådant verktyg utför olika tester på målprogramvaran och bestämmer om testerna lyckas.
Programvara måste testas för att säkerställa att korrekta resultat genereras, giltiga ingångar accepteras och behandlas korrekt och att ogiltiga ingångar avvisas. Testning är nödvändig för att avgöra om resultaten genereras snabbt, mjukvaran fungerar bra även om ett stort antal människor får tillgång till det samtidigt, och så vidare. Manuella tester används ofta, men de är beroende av noggrannheten hos de personer som testar. Att testa programvara manuellt tar tid och kräver ett betydande antal människor för de flesta icke-triviala applikationer och därmed lägger till kostnaden. Dessutom kan tester för tusentals samtidiga användare eller stora datamängder inte enkelt utföras på ett manuellt sätt.
Testautomation är användning av verktyg för att testa programvara. Ett automatiserat testverktyg är i sig själva programvara som kan utvecklas, köpas eller förvärvas. Verktyget startar vanligtvis att köra målprogramvaran och skickar olika ingångar till målprogramvaran för att testa olika förhållanden. Den utvärderar motsvarande utgångar från målprogramvaran och håller reda på pass / misslyckat resultatet av varje test. I slutet av en serie tester ger verktyget vanligtvis en sammanfattning av resultaten så att man snabbt kan fastställa antalet och svårighetsgraden av defekterna.
Ett automatiserat testverktyg kan fungera på två sätt. För det första kan den vara koddriven, det vill säga att verktyget kan vara nära relaterat till den skrivna koden så att den kontrollerar att resultaten för olika ingångar är korrekta. För det andra kan det vara användargränssnittsbaserat där aktiviteter från användare, såsom musrörelser, tangentbordsinmatningar, röstinmatningar, etc. imiteras, och utgångarna som tillhandahålls för användarna undersöks för korrekthet. I det senare fallet kan en persons faktiska aktiviteter registreras och sedan spelas upp igen med verktyget, eller sådana aktiviteter skulle kunna genereras från ett skript med kommandon som matats till verktyget.
Allmänna automatiska testverktyg finns tillgängliga på marknaden. De flesta är ganska dyra, men vissa verktyg finns gratis. Om målprogramvaran är mycket specifik eller unik, måste antagligen ett testverktyg anpassas av det programvaruteamet själv. Precis som med all programvara har verktygen själva begränsningar och fungerar bara korrekt när de ges goda inputdata. Om man inte matar en relativt komplett uppsättning tester, hjälper verktyget inte att bestämma målprogramvarans kvalitet.
Ett automatiserat testverktyg har många fördelar. När en serie tester skapats kan testen utföras snabbare än en person kan utföra dem. Testerna kan köras över natten eller vid udda timmar, vilket gör att människor är fria att fokusera på vad de gör bäst. Testerna kan köras om och om igen för att avgöra om fel har snekit in i målprogramvaran när det modifieras över tid.