Testiranje tablice odluka (primjer)
⚡ Pametni sažetak
Testiranje tablice odlučivanja je tehnika crne kutije koja bilježi ulazne kombinacije i njihove očekivane izlaze u tabličnom obliku. Ovaj vodič objašnjava koncept uzroka i posljedice, vodi kroz primjere prijave i prijenosa te pokazuje zašto metoda pruža snažnu pokrivenost za složenu poslovnu logiku.

Što je testiranje tablice odlučivanja?
Testiranje tablice odlučivanja je tehnika testiranja softvera koja se koristi za testiranje ponašanja sustava za različite kombinacije ulaznih podataka. To je sustavni pristup u kojem se različite kombinacije ulaznih podataka i njihovo odgovarajuće ponašanje sustava (izlaz) bilježe u tabličnom obliku. Zato se naziva i Uzrok-posljedica tablica u kojoj su zabilježeni uzroci i posljedice radi bolje pokrivenosti testiranjem.
A Tablica odluka je tablični prikaz ulaznih podataka u odnosu na pravila, slučajeve ili uvjete testiranja. Vrlo je učinkovit alat za složene testiranje softvera i upravljanje zahtjevima. Tablica odlučivanja pomaže u provjeri svih mogućih kombinacija uvjeta, a testeri mogu lako prepoznati nedostajuće uvjete. Uvjeti su označeni vrijednostima True (T) i False (F).
Primjer 1: Tablica odluka za zaslon za prijavu
Izradimo tablicu odluka za ekran za prijavu.
Uvjet je jednostavan: ako korisnik unese ispravno korisničko ime i lozinku, preusmjerava se na početnu stranicu. Ako je bilo koji unos pogrešan, prikazuje se poruka o pogrešci.
| Uvjeti | Pravilo 1 | Pravilo 2 | Pravilo 3 | Pravilo 4 |
|---|---|---|---|---|
| Korisničko ime (T/F) | F | T | F | T |
| Lozinka (T/F) | F | F | T | T |
| Izlaz (E/H) | E | E | E | H |
Legenda:
- T – Ispravno korisničko ime/lozinka
- F – Pogrešno korisničko ime/lozinka
- E – Prikazuje se poruka o pogrešci
- H – Prikazuje se početni zaslon
Tumačenje:
- Slučaj 1 – Korisničko ime i lozinka su pogrešni. Korisniku se prikazuje poruka o pogrešci.
- Slučaj 2 – Korisničko ime ispravno, lozinka pogrešna. Korisniku se prikazuje poruka o pogrešci.
- Slučaj 3 – Korisničko ime nije ispravno, lozinka je ispravna. Korisniku se prikazuje poruka o pogrešci.
- Slučaj 4 – Korisničko ime i lozinka su ispravni. Korisnik se preusmjerava na početnu stranicu.
Prilikom pretvaranja ovoga u testni slučaj, možete stvoriti dva scenarija, jer sva tri slučaja pogreške testiraju isto pravilo.
- Unesite ispravno korisničko ime i ispravnu lozinku, a zatim kliknite Prijava — korisnik bi trebao otići na početnu stranicu.
- Unesite pogrešno korisničko ime i/ili pogrešnu lozinku, a zatim kliknite Prijava — korisnik bi trebao vidjeti poruku o pogrešci.
Primjer 2: Tablica odluka za zaslon za prijenos
Sada razmotrite dijaloški okvir koji od korisnika traži da prenese fotografiju pod određenim uvjetima:
- Dopušten je samo format ".jpg".
- Veličina datoteke mora biti manja od 32 KB.
- Rezolucija mora biti 137 × 177.
Ako bilo koji uvjet ne uspije, sustav izbacuje odgovarajuću poruku o pogrešci; ako su ispunjeni svi uvjeti, fotografija se uspješno prenosi.
Tablica odluka za ovaj slučaj prikazana je u nastavku.
| Uvjeti | Slučaj 1 | Slučaj 2 | Slučaj 3 | Slučaj 4 | Slučaj 5 | Slučaj 6 | Slučaj 7 | Slučaj 8 |
|---|---|---|---|---|---|---|---|---|
| Format | .jpg | .jpg | .jpg | .jpg | Nije .jpg | Nije .jpg | Nije .jpg | Nije .jpg |
| Veličina | < 32 KB | < 32 KB | ≥ 32 KB | ≥ 32 KB | < 32 KB | < 32 KB | ≥ 32 KB | ≥ 32 KB |
| Rezolucija | 137 × 177 | Ne 137×177 | 137 × 177 | Ne 137×177 | 137 × 177 | Ne 137×177 | 137 × 177 | Ne 137×177 |
| Izlaz | Fotografija je učitana | Neusklađenost rezolucije | Neusklađenost veličine | Neusklađenost veličine i rezolucije | Neusklađenost formata | Neusklađenost formata i rezolucije | Neusklađenost formata i veličine | Neusklađenost formata, veličine i rezolucije |
Iz ove tablice možete stvoriti osam testnih slučajeva za potpunu pokrivenost:
- .jpg, < 32 KB, 137×177 → fotografija uspješno prenesena.
- .jpg, < 32 KB, ne 137×177 → pogreška neusklađenosti rezolucije.
- .jpg, ≥ 32 KB, 137×177 → pogreška neusklađenosti veličine.
- .jpg, ≥ 32 KB, ne 137×177 → pogreška neusklađenosti veličine i rezolucije.
- Nije .jpg, < 32 KB, 137×177 → pogreška neusklađenosti formata.
- Nije .jpg, < 32 KB, nije 137×177 → pogreška neusklađenosti formata i rezolucije.
- Nije .jpg, ≥ 32 KB, 137×177 → pogreška neusklađenosti formata i veličine.
- Nije .jpg, ≥ 32 KB, nije 137×177 → pogreška neusklađenosti formata, veličine i rezolucije.
Zašto je testiranje tablice odlučivanja važno
Testiranje tablice odlučivanja važno je jer testira mnoge kombinacije uvjeta i pruža snažnu pokrivenost za složenu poslovnu logiku. Kada se ponašanje sustava razlikuje za svaki skup ulaza, tehnika daje dobru pokrivenost u jednostavnom, lako čitljivom prikazu.
In programsko inženjerstvo, analiza rubnih vrijednosti i particioniranje ekvivalencije su slične tehnike, ali su najučinkovitije kada sustav pokazuje isti ponašanje na velikom skupu ulaznih podataka. Kada je ponašanje drukčiji Za svaku kombinaciju ulaznih podataka, te tehnike ne mogu osigurati dobru pokrivenost - i testiranje tablice odlučivanja postaje bolja opcija.
Ova tablica također služi kao referenca za razvoj zahtjeva i funkcionalnosti jer ju je lako razumjeti i pokriva sve kombinacije. Značaj raste s povećanjem ulaznih podataka: broj mogućih kombinacija je 2^n, gdje je n broj ulaznih podataka. Za n = 10, što je uobičajeno u web obrascima, to je 1,024 kombinacije. Ne možete ih sve testirati, ali možete odabrati bogati podskup pomoću testiranja temeljenog na odlučivanju.
Prednosti testiranja tablice odlučivanja
- Funkcionira kada se ponašanje sustava razlikuje ovisno o ulazima, gdje particioniranje ekvivalencije i analiza graničnih vrijednosti nisu dovoljne.
- Reprezentacija je jednostavna, pa se lako interpretira i korisna je i za razvojne i za poslovne timove.
- Pomaže u izgradnji učinkovitih kombinacija i osigurava bolju pokrivenost testovima.
- Bilo koje složeno poslovno stanje može se pretvoriti u tablicu odlučivanja.
- Može osigurati 100% pokrivenost kada je broj ulaznih kombinacija nizak.
Nedostaci testiranja tablice odlučivanja
Glavni nedostatak je što s povećanjem broja ulaza tablica postaje složenija i teža za upravljanje.


