Hva er domenetesting?
Domain Testing er en programvaretestingsprosess der applikasjonen testes ved å gi et minimum antall innganger og evaluere de riktige resultatene. Det primære målet med domenetesting er å kontrollere om programvaren godtar innganger innenfor akseptabelt område og leverer nødvendig utdata.
Det er en funksjonstestingsteknikk der utdataene til et system testes med et minimalt antall innganger for å sikre at systemet ikke aksepterer ugyldige og utenfor inngangsverdiene. Det er en av de viktigste testmetodene i White Box. Det verifiserer også at systemet ikke skal akseptere innganger, betingelser og indekser utenfor det angitte eller gyldige området.
Domenetesting er forskjellig for hvert enkelt domene, så du må ha domenespesifikk kunnskap for å teste et programvaresystem.
I denne veiledningen vil du lære-
- Enklere praksis med domenetesting
- Strategi for domenetesting
- Eksempel på domenetesting
- Domenetestestruktur
Enklere praksis med domenetesting
I domenetesting deler vi et domene i underdomener (ekvivalensklasser) og tester deretter ved hjelp av verdier fra hvert underdomener. For eksempel, hvis et nettsted (domene) er gitt for testing, vil vi dele nettstedet i små deler (underdomener) for å gjøre det enkelt å teste.
Domenet kan innebære testing av en hvilken som helst inngangsvariabel eller en kombinasjon av inngangsvariabler.
Utøvere studerer ofte de enkleste tilfellene av domenetesting mindre enn to andre navn, "grensetesting" og "ekvivalensklasseanalyse."
Grensetesting - Grenseverdianalyse (BVA) er basert på testing ved grensene mellom partisjoner. Vi skal teste både gyldige og ugyldige inngangsverdier i partisjonen / klassene.
Test av ekvivalensklasse - Tanken bak denne teknikken er å dele (dvs. å dele) et sett med testbetingelser i grupper eller sett som kan betraktes som de samme (dvs. at systemet skal håndtere dem ekvivalent), derav "ekvivalenspartisjonering."
Det forenklede skjemaet gjelder for domenetesting -
- Bare til tester av inngangsvariabler
- Bare når testet på systemnivå
- Bare når testet en om gangen
- Bare når testet på en veldig overfladisk måte
Det kan forenkles som nedenfor:
Variabel | Gyldig klasseekvivalensklasse | Ugyldig klasseekvivalensklasse | Grenser og spesielle tilfeller | Merknader |
---|---|---|---|---|
X | 0-100 | 0 | ||
100 | ||||
<0 | -1 | |||
> 100 | 101 |
Forklaring:
- Hvis et felt godtar områder fra 0-100, bør ikke feltet akseptere -1 og 101 ettersom de er ugyldige oppføringer og utenfor grensene.
- Feltet skal akseptere verdier som 0,100 og et hvilket som helst tall mellom dem.
Byggebord som disse (i praksis)
- For å bygge en ekvivalensklasseanalyse over tid, legg informasjonen inn i et regneark. Start med å liste opp variabler. Legg til informasjon om dem når du får det.
- Tabellen skal til slutt inneholde alle variablene. Dette betyr alle inngangsvariabler, alle utgangsvariabler og eventuelle mellomvariabler du kan observere.
- I praksis er de fleste bordene jeg har sett ufullstendige. De beste settene viser alle variablene og legger til detaljer for kritiske variabler.
Strategi for domenetesting
Mens du domenetester, må du vurdere å følge ting,
- Hvilket domene tester vi?
- Hvordan gruppere verdiene i klasser?
- Hvilke verdier av klassene som skal testes?
- Hvordan bestemme resultatet?
Hvilket domene tester vi?
Ethvert domene som vi tester har noen inngangsfunksjonalitet og en utgangsfunksjonalitet. Det vil være noen inngangsvariabler som skal angis, og riktig utgang må bekreftes.
Eksempel på domenetesting
- Vurder et enkelt scenario for inngangstest:
C = a + b, der a og b er inngangsvariabler og C er utgangsvariabelen.
Her i eksemplet ovenfor er det ikke behov for klassifisering eller kombinasjon av variablene er nødvendig.
- Vurder nedenstående flere innganger og passende utgangsscenario:
Vurder en spillutstilling for barn, det legges ut 6 konkurranser, og billettene må gis i henhold til alder og kjønn. Billetteringen er en av modulene som skal testes for hele funksjonaliteten til Games-utstillingen.
I følge scenariet fikk vi seks scenarier basert på alder og konkurranser:
- Alder> 5 og <10, bør Boy delta i Storytelling.
- Alder> 5 og <10, skal jenta delta i tegnekonkurranse.
- Alder> 10 og <15, gutt skal delta i quiz.
- Alder> 10 og <15, bør jenta delta i essayskriving.
- Alder <5 bør både gutter og jenter delta i Rhymes Competition.
- Alder> 15 bør både gutter og jenter delta i poesikonkurransen.
Her vil innspillene være Alder og kjønn, og dermed vil billetten til konkurransen bli utstedt. Denne sakspartisjonen av innganger eller bare gruppering av verdier kommer inn i bildet.
Hvordan gruppere verdiene i klasser?
Partisjonering av noen verdier betyr å dele den opp i ikke-overlappende delmengder.
Som vi diskuterte tidligere, er det to typer partisjonering:
- Ekvivalenspartisjonering - Ekvivalenspartisjonering er en programvaretesteteknikk som deler inndataene til en programvareenhet i partisjoner av ekvivalente data som testtilfeller kan utledes fra. I prinsippet er testsaker designet for å dekke hver partisjon minst en gang.
- Grenseverdianalyse - Grenseverdianalyse er en programvaretesteteknikk der tester er designet for å inkludere representanter for grenseverdier i et område. Ideen kommer fra grensen .
For eksemplet ovenfor deler vi verdiene i et delsett eller delsett. Vi deler opp alderen i klassene nedenfor:
- Klasse 1: Barn med aldersgruppe 5 til 10
- Klasse 2: Barn med aldersgruppe under 5 år
- Klasse 3: Barn i alderen 10 til 15 år
- Klasse 4: Barn med aldersgruppe over 15 år.
Hvilke verdier av klassene som skal testes?
Verdiene som tas opp for testing bør være grenseverdier:
- Grenser er representanter for ekvivalensklassene vi prøver dem fra. Det er mer sannsynlig at de avslører en feil enn andre klassemedlemmer, så de er bedre representanter.
- Den beste representanten for en ekvivalensklasse er en verdi mellom området.
For eksemplet ovenfor har vi følgende klasser som skal testes:
For eksempel for scenario nr. 1:
- Klasse 1: Barn med aldersgruppe 5 til 10 (Alder> 5 og <= 10)
Grenseverdier:
- Verdiene skal være lik eller mindre enn 10. Derfor bør alderen 10 inkluderes i denne klassen.
- Verdiene bør være større enn 5. Derfor bør alder 5 ikke inngå i denne klassen.
- Verdiene skal være lik eller mindre enn 10. Derfor bør alderen 11 ikke inkluderes i denne klassen.
- Verdiene bør være større enn 5. Derfor bør alderen 6 inkluderes i denne klassen.
Ekvivalenspartisjon Verdier:
Ekvivalenspartisjon henvises når man bare må teste en tilstand fra hver partisjon. I dette antar vi at hvis en tilstand i en partisjon fungerer, så skal alle tilstandene fungere. På samme måte, hvis en tilstand i den partisjonen ikke fungerer, antar vi at ingen av de andre forholdene vil fungere. For eksempel,
(Alder> 5 og <= 10)
Ettersom verdiene fra 6 til 10 er gyldige, må en av verdiene blant 6,7,8,9 og 10 hentes. Derfor er valgt alder "8" en gyldig aldersgrense for aldersgruppen mellom (Alder> 5 og <= 10). Denne typen partisjon er referert til som ekvivalenspartisjon.
Scenario | Grenseverdier som skal tas | Verdier for ekvivalenspartisjonering |
---|---|---|
Gutt - Alder> 5 og <= 10 | Inndatasalder = 6 Inndatasalder = 5 Inndatasalder = 11 Inndatasalder = 10 | Inngangsalder = 8 |
Jente - Alder> 5 og <= 10 | Inndatasalder = 6 Inndatasalder = 5 Inndatasalder = 11 Inndatasalder = 10 | Inngangsalder = 8 |
Gutt - Alder> 10 og <= 15 | Inndatasalder = 11 Inndatasalder = 10 Inndatasalder = 15 Inngangsalder = 16 | Inngangsalder = 13 |
Jente - Alder> 10 og <= 15 | Inndatasalder = 11 Inndatasalder = 10 Inndatasalder = 15 Inngangsalder = 16 | Inngangsalder = 13 |
Alder <= 5 | Inngangsalder = 4 Inngangsalder = 5 | Inngangsalder = 3 |
Alder> 15 | Inngangsalder = 15 Inngangsalder = 16 | Inngangsalder = 25 |
Hvordan avgjør vi om programmet besto eller ikke besto testen?
Å overføre funksjonaliteten avhenger ikke bare av resultatene av scenariene ovenfor. Input input og forventet output vil gi oss resultatene og dette krever domenekunnskap.
Bestemme resultatene av eksemplet:
Derfor, hvis alle testtilfellene til ovennevnte består, blir domenet for utstedelse av billetter i konkurransen bestått. Hvis ikke, mislykkes domenet.
Domenetestestruktur
Vanligvis følger testere trinnene nedenfor i en domenetesting. Disse kan tilpasses / hoppes over i henhold til våre testbehov.
- Identifiser de potensielt interessante variablene.
- Identifiser variabelen (e) du kan analysere nå og bestill dem (minste til største og omvendt).
- Opprett og identifiser grenseverdier og ekvivalensklasseverdier som ovenfor.
- Identifiser sekundære dimensjoner og analyser hver på en klassisk måte. (I eksemplet ovenfor er kjønn den sekundære dimensjonen).
- Identifiser og test variabler som inneholder resultater (outputvariabler).
- Evaluer hvordan programmet bruker verdien av denne variabelen.
- Identifiser ytterligere potensielt relaterte variabler for kombinasjonstesting.
- Se for deg risikoer som ikke nødvendigvis tilordnes en åpenbar dimensjon.
- Identifiser og liste opp uanalyserte variabler. Samle informasjon for senere analyse.
- Oppsummer analysen din med en risiko / ekvivalens tabell.
Sammendrag:
Domenetesting, som det er beskrevet ovenfor, krever kunnskap om å gi riktig input for å oppnå ønsket produksjon. Dermed er det bare mulig å bruke den til små koder.