Datadrevet testing
Data Driven Testing er en testmetode for programvare der testdata lagres i tabell- eller regnearkformat. Datadrevet testing lar testere legge inn et enkelt testskript som kan utføre tester for alle testdata fra en tabell og forvente at testutdataene i samme tabell. Det kalles også tabelldrevet testing eller parameterisert testing.
Datadrevet rammeverk
Data Driven Framework er et rammeverk for automatiseringstesting der inngangsverdier blir lest fra datafiler og lagret i variabler i testskript. Det gjør det mulig for testere å bygge både positive og negative testtilfeller til en enkelt test. Inndata i datadrevet rammeverk kan lagres i en eller flere datakilder som .xls, .xml, .csv og databaser.
I denne veiledningen vil du lære
- Hva er datadrevet testing?
- Hvorfor datadrevet testing?
- Hvordan lage et datadrevet automatiseringsrammer
- Beste fremgangsmåter for datadrevet testing:
- Fordeler med datadrevet testing
- Ulemper ved datadrevet testing:
Hvorfor datadrevet testing?
Datadrevet testing er viktig fordi testere ofte har flere datasett for en enkelt test, og det kan være tidkrevende å lage individuelle tester for hvert datasett. Datadrevet testing hjelper med å holde data atskilt fra testskript, og de samme testskriptene kan utføres for forskjellige kombinasjoner av inngangstestdata, og testresultatene kan genereres effektivt.
Eksempel:
For eksempel ønsker vi å teste påloggingssystemet med flere inntastingsfelt med 1000 forskjellige datasett.
For å teste dette kan du følge forskjellige tilnærminger:
Tilnærming 1) Lag 1000 skript ett for hvert datasett og kjør hver test hver for seg.
Tilnærming 2) Endre verdien i testskriptet manuelt og kjør det flere ganger.
Tilnærming 3) Importer dataene fra excel-arket. Hent testdata fra excel-rader en etter en og kjør skriptet.
I de gitte tre scenariene er de to første arbeidskrevende og tidkrevende. Derfor er det ideelt å følge den tredje tilnærmingen.
Dermed er den tredje tilnærmingen ingenting annet enn et datadrevet rammeverk.
Hvordan lage et datadrevet automatiseringsrammer
Vurder at du vil teste påloggingsfunksjonaliteten til et program.
Trinn 1) Identifiser testtilfellene
- Inngang Riktig brukernavn og passord - Pålogging vellykket
- Skriv inn feil brukernavn og riktig passord - Innloggingsfeil
- Skriv inn riktig brukernavn og feil passord - Innloggingsfeil
Trinn 2) Opprett detaljerte trinn for ovennevnte 3 testtilfeller
Testforsøk# | Beskrivelse | Teststrinn | Testdata | forventede resultater |
---|---|---|---|---|
1 | Sjekk pålogging for gyldig legitimasjon |
| Brukernavn: gyldig passord: gyldig | Pålogging suksess |
2 | Sjekk pålogging for ugyldig legitimasjon |
| Brukernavn: ugyldig passord: gyldig | Pålogging mislyktes |
3 | Sjekk pålogging for ugyldig legitimasjon |
| Brukernavn: gyldig passord: ugyldig | Pålogging mislyktes |
Trinn 3) Opprett testskript
Hvis du overholder teststrinnene, forbli vanlige gjennom de tre teststrinnene. Du må lage et testskript for å utføre disse trinnene
// Dette er Pseudo Code// Testtrinn 1: Start applikasjonendriver.get ("URL til applikasjonen");// Testtrinn 2: Skriv inn brukernavntxtbox_username.sendKeys ("valid");// Teststrinn 3: Skriv inn passordtxtbox_password.sendKeys ("ugyldig");// Testtrinn 4: Kontroller resultateneHvis (Neste skjerm) utskriftssuksess ellers mislykkes
Trinn 4) Opprett en excel / csv med Input Test Data
Trinn 5) Trinn Endre Scrip to Loop over Input Test Data. Inngangskommandoer bør også parametriseres
// Dette er Pseudo Code// Loop 3 Timesfor (i = 0; i & lt; = 3; i ++) {// Les data fra Excel og lagre i variablerint input_1 = ReadExcel (i, 0);int input_2 = ReadExcel (i, 1);// Testtrinn 1: Start applikasjonendriver.get ("URL til applikasjonen");// Testtrinn 2: Skriv inn brukernavntxtbox_username.sendKeys (input_1);// Teststrinn 3: Skriv inn passordtxtbox_password.sendKeys (input_2);// Testtrinn 4: Kontroller resultateneHvis (Neste skjermbilde) er vellykketellers mislykkes}
Ovenfor er det bare 3 testtilfeller. Testskriptet kan brukes til å gå gjennom følgende testtilfeller bare ved å legge til testdataverdier i Excel
- Skriv inn feil brukernavn og feil passord - Pålogging mislyktes
- Skriv inn riktig brukernavn og passord tomt - Innlogging mislyktes
- Skriv inn blankt brukernavn og blankt passord - Pålogging mislykkes
Og så videre
Beste fremgangsmåter for datadrevet testing:
Nedenfor er gitt beste testpraksis for datadrevet testing:
- Det er ideelt å bruke realistisk informasjon under den datadrevne testprosessen
- Testflytnavigering skal være kodet inne i testskriptet
- Kjør virtuelle APIer med meningsfulle data
- Bruk data til å drive dynamiske påstander
- Test positive så vel som negative resultater
- Repurpose datadrevne funksjonelle tester for sikkerhet og ytelse
Fordeler med datadrevet testing
Datadrevet gir mange fordeler, noen av dem er:
- Gjør det mulig å teste applikasjon med flere datasett under regresjonstesting
- Testdata og verifiseringsdata kan organiseres i bare én fil, og de er atskilt fra test case logikken.
- Basert på verktøyet er det mulig å ha testskriptene i et enkelt arkiv. Dette gjør tekstene enkle å forstå, vedlikeholde og administrere.
- Handlinger og funksjoner kan brukes på nytt i forskjellige tester.
- Noen verktøy genererer testdata automatisk. Dette er nyttig når det er nødvendig med store mengder tilfeldige testdata, noe som bidrar til å spare tid.
- Datadrevet testing kan utføre hvilken som helst fase av utviklingen. En datadrevet testpleie blir vanligvis slått sammen i den ene prosessen. Imidlertid kan den brukes i flere testsaker.
- Tillater utviklere og testere å ha tydelig skille mellom logikken i testtilfellene / skriptene og testdataene.
- De samme testsakene kan utføres flere ganger, noe som bidrar til å redusere testsaken og skriptene.
- Eventuelle endringer i testskriptet påvirker ikke testdataene
Ulemper ved datadrevet testing:
Noen ulemper med datadrevet automatiseringstestmetode er:
- Kvaliteten på testen avhenger av automatiseringsferdighetene til implementeringsteamet
- Datavalidering er en tidkrevende oppgave når du tester stor datamengde.
- Vedlikehold er et stort problem da det kreves stor mengde koding for datadrevet testing.
- Det kreves høye tekniske ferdigheter. En tester må kanskje lære et helt nytt skriptspråk.
- Det vil være mer dokumentasjon. Mest relatert til skriptadministrasjon tester infrastruktur og testresultater.
- En tekstredigerer som Notisblokk er nødvendig for å opprette og vedlikeholde datafiler.
Konklusjon:
- Datadrevet er et testautomatiseringsrammeverk som lagrer testdata i et tabell- eller regnearkformat.
- I datadrevet testautomatiseringsrammeverk kan inngangsdata lagres i enkelt eller flere datakilder som xls, XML, csv og databaser.
- Å lage en individuell test for hvert datasett er en lang og tidkrevende prosess. Data Driven Testing framework løser dette problemet ved å holde dataene atskilt fra funksjonstester.
- I Data Driven Testing er det et ideelt alternativ å bruke realistisk informasjon
- Det tillater testing av applikasjoner med flere sett med dataverdier under regresjonstesting
- Ulempen med denne metoden er at den avhenger av implementeringsgruppens automatiseringsferdigheter