Generering av testdata: Hva er, hvordan, eksempel, verktøy

Innholdsfortegnelse:

Anonim

Som tester kan du tenke at 'Å designe testtilfeller er utfordrende nok, så hvorfor bry deg med noe så trivielt som testdata' '. Hensikten med denne opplæringen er å introdusere deg for testdata, dens betydning og gi praktiske tips og triks for å generere testdata raskt. Så la oss begynne!

Hva er testdata i programvaretesting?

Testdata i programvaretesting er inngangen som gis til et program under testutførelsen. Det representerer data som påvirker eller påvirkes av programvareutførelse under testing. Testdata brukes til både positiv testing for å verifisere at funksjoner gir forventede resultater for gitte innganger og for negativ testing for å teste programvarens evne til å håndtere uvanlige, eksepsjonelle eller uventede innganger.

Dårlig utformede testdata tester kanskje ikke alle mulige testscenarier som vil hemme programvarens kvalitet.

Hva er generering av testdata? Hvorfor skal testdata opprettes før testutførelse?

Alle vet at testing er en prosess som produserer og forbruker store mengder data. Data brukt i testing beskriver de første forholdene for en test og representerer mediet testeren påvirker programvaren gjennom. Det er en avgjørende del av de fleste funksjonelle tester.

Avhengig av testmiljøet ditt, kan det hende du trenger å OPPRETTE testdata (oftest) eller i det minste identifisere passende testdata for testtilfellene dine (hvis testdataene allerede er opprettet).

Testdata blir vanligvis opprettet synkronisert med testtilfellet det er ment å brukes til.

Testdata kan genereres -

  • Manuelt
  • Massekopi av data fra produksjon til testmiljø
  • Massekopi av testdata fra eldre klientsystemer
  • Automatiserte verktøy for generering av testdata

Eksempelvis må data genereres før du begynner å utføre test fordi det er vanskelig å håndtere testdataadministrasjon ellers. Siden det i mange testmiljøer er å lage testdata tar flere for trinn eller veldig tidkrevende testmiljøkonfigurasjoner. . Også hvis generering av testdata er ferdig mens du er i testutførelsesfasen, kan du overskride testfristen.

Nedenfor er det beskrevet flere testtyper sammen med noen forslag angående behovet for testdata.

Testdata for White Box Testing

I White Box Testing er testdataadministrasjon hentet fra direkte undersøkelse av koden som skal testes. Testdata kan velges ved å ta hensyn til følgende ting:

  • Det er ønskelig å dekke så mange grener som mulig; testdata kan genereres slik at alle grener i programkildekoden testes minst en gang
  • Banetesting: alle baner i programkildekoden testes minst én gang - klargjøring av testdata kan gjøres for å dekke så mange tilfeller som mulig
  • Negativ API-testing:
    • Testdata kan inneholde ugyldige parametertyper som brukes til å kalle forskjellige metoder
    • Testdata kan bestå i ugyldige kombinasjoner av argumenter som brukes til å kalle programmets metoder

Testdata for ytelsestesting

Performance Testing er den typen testing som utføres for å bestemme hvor raskt systemet reagerer under en bestemt arbeidsbelastning. Målet med denne typen testing er ikke å finne feil, men å eliminere flaskehalser. Et viktig aspekt ved ytelsestesting er at settet med prøvedata som brukes må være veldig nær 'ekte' eller 'levende' data som brukes på produksjonen. Følgende spørsmål oppstår: 'Ok, det er bra å teste med ekte data, men hvordan får jeg disse dataene?' Svaret er ganske greit: fra de som vet best - kundene . De kan være i stand til å gi noen data de allerede har, eller hvis de ikke har et eksisterende datasett, kan de hjelpe deg ved å gi tilbakemelding om hvordan virkelige data kan se ut. I tilfelle du er i envedlikeholdstestprosjekt kan du kopiere data fra produksjonsmiljøet til testplassen. Det er en god praksis å anonymisere (kryptere) sensitive kundedata som personnummer, kredittkortnumre, bankdetaljer etc. mens kopien er laget.

Testdata for sikkerhetstesting

Sikkerhetstesting er prosessen som avgjør om et informasjonssystem beskytter data mot ondsinnet hensikt. Datasettet som må utformes for å teste en programvaresikkerhet fullt ut, må dekke følgende emner:

  • Konfidensialitet: All informasjon gitt av klienter holdes strengt fortrolig og deles ikke med noen utenforstående parter. Som et kort eksempel, hvis et program bruker SSL, kan du designe et sett med testdata som verifiserer at krypteringen er gjort riktig.
  • Integritet: Bestem at informasjonen som leveres av systemet er riktig. For å designe egnede testdata kan du begynne med å ta en grundig titt på design, kode, databaser og filstrukturer.
  • Autentisering: Representerer prosessen med å etablere identiteten til en bruker. Testdata kan utformes som en annen kombinasjon av brukernavn og passord, og formålet er å kontrollere at bare autoriserte personer har tilgang til programvaresystemet.
  • Autorisasjon: Forteller hva som er rettighetene til en bestemt bruker. Testdata kan inneholde en annen kombinasjon av brukere, roller og operasjoner for å kontrollere at bare brukere med tilstrekkelige privilegier er i stand til å utføre en bestemt operasjon.

Testdata for Black Box Testing

Ved Black Box Testing er koden ikke synlig for testeren. Dine funksjonelle testtilfeller kan ha testdata som oppfyller følgende kriterier -

  • Ingen data : Kontroller systemresponsen når ingen data er sendt inn
  • Gyldige data : Sjekk systemrespons når gyldige testdata leveres
  • Ugyldige data : Sjekk systemrespons når InValid-testdata sendes inn
  • Ulovlig dataformat : Kontroller systemrespons når testdata er i ugyldig format
  • Datasett for grensebetingelser: Testdata som oppfyller betingelser for grenseverdier
  • Equivalence Partition Data Set : Testdata som kvalifiserer dine ekvivalenspartisjoner.
  • Beslutningstabell datasett : Testdata som kvalifiserer teststrategien for beslutningstabellen
  • State Transition Test Data Set : Testdata som oppfyller din teststrategi for statlig overgangstest
  • Bruk saksprøvedata : Testdata synkroniseres med brukssakene dine.

Merk : Avhengig av programvaren som skal testes, kan du bruke noen eller hele opprettelsen av testdata

Automatiserte verktøy for generering av testdata

For å generere forskjellige datasett, kan du bruke en rekke automatiserte verktøy for generering av testdata. Nedenfor er noen eksempler på slike verktøy:

DTM Test Data generator, er et fullt tilpassbart verktøy som genererer data, tabeller (visninger, prosedyrer osv.) For databasetesting (ytelsestesting, QA-testing, belastningstesting eller brukervennlighetstesting).
Datatect er en SQL-datagenerator fra Banner Software, genererer en rekke realistiske testdata i ASCII-flate filer eller genererer direkte testdata for RDBMS, inkludert Oracle, Sybase, SQL Server og Informix.

Konklusjon

Avslutningsvis, veldesignede testdata lar deg identifisere og korrigere alvorlige funksjonsfeil. Valg av testdata som er valgt må vurderes på nytt i hver fase av en flerfaset produktutviklingssyklus. Så hold alltid øye med det.