Skip to main content

Hvad er en testautomationsramme?

En testautomationsramme er et sæt værktøjer, der bruges til at udføre automatiseret softwaretest.Testautomationsrammer giver betydelige fordele i forhold til manuel test og bruges ofte i hurtig softwareudvikling.Disse rammer giver softwareudviklere mulighed for at oprette test, udføre test og analysere testresultater.En testautomatiseringsramme kan være drevet af kode, data, en grafisk brugergrænseflade (GUI) eller en kombination af disse.

Testautomationsrammer kræves for at imødekomme behovene i hurtig softwareudvikling.I den klassiske livscyklus for vandfaldssoftwareudvikling var softwaretest en diskret fase udført efter implementering eller kodning.Som sådan var menneskelige udførte tests typiske.

Mange udviklingsteam har erstattet vandfaldsmodellen med forskellige Agile -softwareudviklingsmetoder, som typisk kræver hurtig, iterativ udvikling.Hurtig udvikling har skabt et behov for hurtig test.En testautomatiseringsramme giver et softwareteam mulighed for at udføre hyppige, automatiserede test på en kodebase.For eksempel snarere end at kræve en separat testfase efter udvikling, kan et team, der bruger en testautomatiseringsramme, vælge at køre en fuld pakke med test natten over såvel som mindre bidder med automatiserede test hele dagen, da der foretages ændringer til kildenkode.

Den mest almindeligt anvendte type rammer er den koddrevne ramme, der bruges til at udføre hvidboks-test.Koddrevne rammer kræver, at udviklere skriver små kodestykker i form af enhedstest for at teste softwarefunktionalitet eller ydeevne.Udviklere, der bruger koddrevne rammer, skal passe på at skrive deres software på en måde, der er testbar mdash;Det vil sige, at koden skal moduleres, således at en enhedstest kan kalde et kodestykke og verificere resultatet.Disse rammer inkluderer typisk en implementering af Xunit, hvor X varierer baseret på det programmeringssprog, der testes.

GUI-drevne testrammer bruges til at udføre sort-box-test, ved hjælp af et softwareværktøj som bruger ville gennem mus- og tastaturindgange.De består muligvis af scripts skrevet af udviklere til at udøve en række funktionaliteter, eller de kan bestå af værktøjsgenererede scripts, såsom plades-og-play-back-scripts.En potentiel ulempe ved disse rammer er, at manuskriptet går i stykker, når GUI ændrer sig.Nogle GUI-automationsrammer genererer muligvis et script, der kan redigeres af en udvikler i tilfælde af GUI-ændringer, og andre kan kræve, at brugeren opretter en frisk rekord-og-play-back-session.

Data-drevne testrammer udfører softwareTest ved hjælp af data, og disse test fungerer typisk med datatabeller, der specificerer både input og output.Dataene kan opbevares forskellige steder, såsom databaser, regneark eller tekstfiler.Scripts kan skrives for at udføre softwaremetoder, der tager inputene som parametre og for at validere softwaremetoderne returnerer værdi mod output.Alt andet, der kan varieres, såsom det miljø, under hvilket testen udføres, kan også gemmes med dataene og adskilles fra testskriptet.En fordel, der er ydet af disse rammer, er adskillelsen af data og logik, som ofte fører til lavere vedligeholdelse af lang sigt.