Što je testiranje domene u testiranju softvera? (s primjerom)
⚡ Pametni sažetak
Testiranje domene provjerava aplikaciju tako što joj daje najmanji korisni skup ulaza, pokrivajući valjane, nevaljane i granične vrijednosti te potvrđujući da samo vrijednosti unutar prihvaćenog raspona proizvode potreban izlaz.
Što je testiranje domene?
Testiranje domene je testiranje softvera proces u kojem se aplikacija testira zadavanjem minimalnog broja ulaza i procjenjivanjem odgovarajućih izlaza. Primarni cilj testiranja domene je provjeriti prihvaća li softverska aplikacija ulaze unutar prihvatljivog raspona i isporučuje li potreban izlaz.
To je funkcionalno ispitivanje tehnika u kojoj se izlaz sustava testira s minimalnim brojem ulaza kako bi se osiguralo da sustav ne prihvaća nevažeće i ulazne vrijednosti izvan raspona. Također se tretira kao jedna od važnih testiranje bijele kutije metode. Nadalje provjerava da sustav ne bi trebao prihvaćati ulaze, uvjete i indekse izvan navedenog ili valjanog raspona.
Testiranje domene razlikuje se za svaku pojedinu domenu, stoga vam je potrebno znanje specifično za domenu kako biste testirali softverski sustav.
Jednostavnija praksa testiranja domene
U testiranju domene domenu dijelimo na poddomene (klase ekvivalencije) i zatim testiramo pomoću vrijednosti iz svake poddomene. Na primjer, ako je web stranica (domena) dana na testiranje, web stranicu ćemo podijeliti u male dijelove (poddomenu) radi lakšeg testiranja.
Domena može uključivati testiranje bilo koje ulazne varijable ili kombinacije ulaznih varijabli.
Praktičari često proučavaju najjednostavnije slučajeve testiranja domene pod dva druga naziva, "granično testiranje" i "analiza klasa ekvivalencije".
Ispitivanje granica - Analiza graničnih vrijednosti (BVA) se temelji na testiranju na granicama između particija. Testirat ćemo i valjane i nevaljane ulazne vrijednosti u particiji/klasama.
Ispitivanje klase ekvivalencije – Ideja koja stoji iza ove tehnike je podijeliti (tj. podijeliti) skup ispitnih uvjeta u grupe ili skupove koji se mogu smatrati istima (tj. sustav bi ih trebao tretirati na ekvivalentan način), dakle 'particioniranje ekvivalencije'.
Taj pojednostavljeni oblik primjenjuje se za testiranje domene –
- Samo za testove ulaznih varijabli
- Samo kada se testira na razina sustava
- Samo kada se testira jedan po jedan
- Samo kada se testira na vrlo površan način
Može se pojednostaviti na sljedeći način:
| Varijabla | Valjana klasa ekvivalencije klase | Nevažeća klasa ekvivalencije klase | Granice i posebni slučajevi | Bilješke |
|---|---|---|---|---|
| X | 0-100 | 0 | ||
| 100 | ||||
| <0 | -1 | |||
| > 100 | 101 |
Objašnjenje:
- Ako polje prihvaća raspone od 0 do 100, ne bi smjelo prihvaćati -1 i 101 jer su to nevažeći unosi i prelaze granice.
- Polje treba prihvaćati vrijednosti kao što su 0, 100 i bilo koji broj između njih.
Izrada ovakvih tablica (u praksi)
- Za izradu analize klase ekvivalencije tijekom vremena, unesite podatke u proračunsku tablicu. Započnite s popisivanjem varijabli. Dodajte podatke o njima kako ih dobivate.
- Tablica bi na kraju trebala sadržavati sve varijable. To znači sve ulazne varijable, sve izlazne varijable i sve međuvarijable koje možete promatrati.
- U praksi, većina takvih tablica je nepotpuna. Najbolje navode svaku varijablu i dodaju detalje za one ključne.
Strategija testiranja domene
Prilikom testiranja domene, potrebno je uzeti u obzir sljedeće stvari:
- Koju domenu testiramo?
- Kako grupirati vrijednosti u klase?
- Koje vrijednosti klasa treba testirati?
- Kako odrediti rezultat?
Koju domenu testiramo?
Svaka domena koju testiramo ima neku ulaznu funkcionalnost i izlaznu funkcionalnost. Treba unijeti neke ulazne varijable, a odgovarajući izlaz treba provjeriti. Dijagram u nastavku prikazuje taj odnos ulaza i izlaza.
Primjer testiranja domene
Razmotrite scenarij jednog ulaznog testa:
C = a+b, gdje su a i b ulazne varijable, a C izlazna varijabla.
Ovdje u gornjem primjeru nema potrebe za klasifikacijom, niti je potrebna bilo kakva kombinacija varijabli.
Razmotrite donji višestruki ulaz i odgovarajući scenarij izlaza:
Razmotrite izložbu igara za djecu. Raspoređeno je šest natjecanja, a ulaznice se moraju dodijeliti prema unesenoj dobi i spolu. Prodaja ulaznica jedan je od modula koji treba testirati za cijelu funkcionalnost izložbe igara.
Prema scenariju dobili smo šest scenarija prema uzrastu i natjecanjima:
- Dječak u dobi >5 i <=10 godina trebao bi sudjelovati u pripovijedanju.
- Djevojčice od 5 do 10 godina trebaju sudjelovati u natjecanju u crtanju.
- Dječak od 10 i 15 godina trebao bi sudjelovati u kvizu.
- Djevojke u dobi >10 i <=15 godina trebaju sudjelovati u pisanju eseja.
- U natjecanju u rimama trebaju sudjelovati i dječaci i djevojčice, a djeca su mlađa od 5 godina.
- Dob >15, i dječaci i djevojčice trebaju sudjelovati u natjecanju poezije.
Ovdje će ulaz biti Dob i Spol, te će stoga biti izdana karta za natjecanje. U ovom slučaju, particija ulaza ili jednostavno grupiranjeping vrijednosti, dolazi do izražaja.
Kako grupirati vrijednosti u klase?
Particioniranje nekih vrijednosti znači njihovo dijeljenje na one koji se ne preklapajuping podskupovi.
Kao što smo ranije spomenuli, postoje dvije vrste particioniranja:
- Podjela ekvivalencije – Particioniranje ekvivalencije je tehnika testiranja softvera koja dijeli ulazne podatke softverske jedinice na particije ekvivalentnih podataka iz kojih test slučajevi može se izvesti. U načelu, testni slučajevi su dizajnirani tako da pokriju svaku particiju barem jednom.
- Analiza graničnih vrijednosti – Analiza graničnih vrijednosti je tehnika testiranja softvera u kojoj su testovi osmišljeni tako da uključuju predstavnike graničnih vrijednosti u rasponu. Ideja dolazi od granice.
U gornjem primjeru, vrijednosti dijelimo u podskupove. Dob dijelimo u sljedeće klase:
- Razred 1: Djeca od 5 do 10 godina
- Razred 2: Djeca mlađa od 5 godina
- Razred 3: Djeca od 10 do 15 godina
- Razred 4: Djeca starija od 15 godina.
Koje vrijednosti klasa treba testirati?
Vrijednosti uzete za testiranje trebaju biti granične vrijednosti:
- Granice su predstavnici klasa ekvivalencije iz kojih ih uzorkujemo. Vjerojatnije je da će otkriti pogrešku od drugih članova klase, pa su bolji predstavnici.
- Najbolji predstavnik klase ekvivalencije je vrijednost između raspona.
Za gornji primjer imamo sljedeće klase za testiranje:
Na primjer, za scenarij br. 1:
Razred 1: Djeca od 5 do 10 godina (dob >5 i <=10)
Granične vrijednosti:
- Vrijednosti bi trebale biti jednake ili manje od 10. Stoga bi dob od 10 godina trebala biti uključena u ovu klasu.
- Vrijednosti bi trebale biti veće od 5. Stoga dob od 5 godina ne bi trebala biti uključena u ovaj razred.
- Vrijednosti bi trebale biti jednake ili manje od 10. Stoga, dob od 11 godina ne bi trebala biti uključena u ovu klasu.
- Vrijednosti trebaju biti veće od 5. Dakle, dob od 6 godina treba biti uključena u ovaj razred.
Vrijednosti particije ekvivalencije:
O particiji ekvivalencije govori se kada se mora testirati samo jedan uvjet iz svake particije. Pritom pretpostavljamo da ako jedan uvjet u particiji funkcionira, onda bi trebali funkcionirati i svi uvjeti. Na isti način, ako jedan uvjet u toj particiji ne funkcionira, pretpostavljamo da nijedan od ostalih uvjeta neće funkcionirati. Na primjer,
(Dob >5 i <=10)
Budući da su vrijednosti od 6 do 10 valjane, potrebno je odabrati jednu od vrijednosti između 6, 7, 8, 9 i 10. Stoga je odabrana dob "8" valjana ulazna dob za dobnu skupinu između (dob > 5 i <= 10). Ova vrsta particije naziva se particija ekvivalencije.
| scenario | Granične vrijednosti koje treba uzeti | Vrijednosti dijeljenja ekvivalencije |
|---|---|---|
| Dječak – Dob >5 i <=10 | Unos godina = 6 Unos godina = 5 Unos godina = 11 Unos godina = 10 |
Unos godina = 8 |
| Djevojčica – dob >5 i <=10 | Unos godina = 6 Unos godina = 5 Unos godina = 11 Unos godina = 10 |
Unos godina = 8 |
| Dječak – Dob >10 i <=15 | Unos godina = 11 Unos godina = 10 Unos godina = 15 Unos godina = 16 |
Unos godina = 13 |
| Djevojčica – dob >10 i <=15 | Unos godina = 11 Unos godina = 10 Unos godina = 15 Unos godina = 16 |
Unos godina = 13 |
| Dob <=5 | Unos godina = 4 Unos godina = 5 |
Unos godina = 3 |
| Dob> 15 | Unos godina = 15 Unos godina = 16 |
Unos godina = 25 |
Kako možemo utvrditi je li program prošao ili nije prošao test?
Prosljeđivanje funkcionalnosti ne ovisi samo o rezultatima gore navedenih scenarija. Zadani ulaz i očekivani izlaz dat će nam rezultate, a to zahtijeva poznavanje domene.
Određivanje rezultata primjera: donji zaslon prikazuje izlaz izdavanja karata za svaku kombinaciju dobi i spola.
Dakle, ako svi gore navedeni testni slučajevi prođu, domena izdavanja ulaznica u natjecanju je prošla. Ako ne, domena je prošla.
Struktura testiranja domene
Obično testeri slijede dolje navedene korake u testiranju domene. Oni se mogu prilagoditi ili preskočiti prema našim potrebama testiranja.
- Identificirajte potencijalno zanimljive varijable.
- Odredite varijablu(e) koju sada možete analizirati i poredajte ih (od najmanjih prema najvećim i obrnuto).
- Stvorite i identificirajte granične vrijednosti i vrijednosti klase ekvivalencije kao gore.
- Identificirajte sekundarne dimenzije i analizirajte svaku na klasičan način. (U gornjem primjeru, spol je sekundarna dimenzija.)
- Identificirajte i testirajte varijable koje sadrže rezultate (izlazne varijable).
- Ocijenite kako program koristi vrijednost ove varijable.
- Identificirajte dodatne potencijalno povezane varijable za kombinirano testiranje, gdje testiranje tablice odluka pomaže.
- Zamislite rizike koji se ne moraju nužno preslikavati na očitu dimenziju.
- Identificirajte i navedite neanalizirane varijable. Prikupite informacije za kasniju analizu.
- Sažmite svoju analizu s tablicom rizika/ekvivalencije.


