Skip to main content

Vad är en testautomation?

Ett testautomatiseringsram är en uppsättning verktyg som används för att utföra automatiserad mjukvarutestning.Test Automation Frameworks ger betydande fördelar jämfört med manuell testning och används ofta i snabb mjukvaruutveckling.Dessa ramar gör det möjligt för mjukvaruutvecklare att skapa tester, utföra test och analysera testresultat.En testautomationsram kan drivas av kod, data, ett grafiskt användargränssnitt (GUI) eller en kombination av dessa.

Test Automation Frameworks krävs för att tillgodose behoven av snabb mjukvaruutveckling.I den klassiska livscykeln för vattenfallsprogramvara var mjukvarutestning en diskret fas som utfördes efter implementering eller kodning.Som sådan var mänskliga genomförda tester typiska.

Många utvecklingsgrupper har ersatt vattenfallsmodellen med olika smidiga mjukvaruutvecklingsmetoder, som vanligtvis kräver snabb, iterativ utveckling.Snabb utveckling har skapat ett behov av snabb testning.Ett testautomationsram gör det möjligt för ett mjukvaruteam att utföra ofta, automatiserade testning på en kodbas.Till exempel, snarare än att kräva en separat testfas efter utveckling, kan ett team som använder en testautomationsram välja att köra en fullständig svit med tester över natten, liksom mindre bitar av automatiserade tester under dagen eftersom förändringar görs i källanKod.

Den mest använda typen av ramverk är det koddrivna ramverket, som används för att utföra testning av vitlåda.Kodstyrda ramar kräver att utvecklare skriver små kodavsnitt, i form av enhetstester, för att testa programvarufunktionalitet eller prestanda.Utvecklare som använder koddrivna ramar måste se till att skriva sin programvara på ett sätt som är testbart mdash;Det vill säga att koden måste moduleras så att ett enhetstest kan kalla ett kodavsnitt och verifiera resultatet.Dessa ramverk inkluderar vanligtvis en implementering av Xunit, där X varierar baserat på programmeringsspråket som testas.

GUI-driven testramar används för att utföra svartlådestest, med hjälp av ett programverktyg som en användare skulle, via mus- och tangentbordingångar.De kan bestå av skript skrivna av utvecklare för att utöva en serie funktionalitet, eller de kan bestå av verktygsgenererade skript, till exempel skript-back-back-skript.En potentiell nackdel med dessa ramar är att skriptet kommer att bryta när GUI ändras.Vissa GUI-AUTOMATION-ramverk kan generera ett skript som kan redigeras av en utvecklare i fall av GUI-förändringar, och andra kan kräva att användaren skapar en ny rekord-och-play-back-session.

Datadrivna testramar utför programvaraTesta med data, och dessa tester fungerar vanligtvis med datatabeller som anger både ingångar och utgångar.Uppgifterna kan förvaras på olika platser, till exempel databaser, kalkylblad eller textfiler.Skript kan skrivas för att utföra programvaremetoder som tar ingångarna som parametrar och för att validera programvaremetodernas returvärde mot utgången.Allt annat som kan varieras, till exempel miljön under vilken testet körs, kan också lagras med data och separeras från testskriptet.En fördel som dessa ramar tillhandahåller är separationen av data och logik, vilket ofta leder till lägre långsiktigt underhåll.