Ključna razlika : White-box testiranje je tehnika testiranja softvera, u kojoj je poznato i uzeto u obzir unutarnje funkcioniranje aplikacije koja se testira. Black-box testiranje je tehnika testiranja softvera, gdje primjena programa koji se testira nije poznata ispitivaču ili se ne uzima u obzir.
Ispitivanje crne kutije je strategija testiranja koja se temelji isključivo na zahtjevima i specifikacijama. Ne zahtijeva znanje o unutarnjim stazama, strukturama ili implementaciji softvera na aplikacijama koje se testiraju. Međutim, ova strategija minimizira pristup testiranja u pronalaženju pogrešaka ili grešaka u programu testiranja. Također, nedostaci se ne ispravljaju zbog nedostatka internog znanja primjene testera.
Ispitivanje crne kutije vrši se na vanjskoj razini sustava; jednostavno provjerava je li izlaz ispravan za dani ulaz. Funkcionalnosti aplikacije se provjeravaju i testiraju. Isto tako nije potrebno znanje korisnika o internom protoku ili dizajnu sustava, jer oni jednostavno testiraju sustav bez informacija o tome kako je sustav napravljen.
White-box testiranje je strategija testiranja koja se temelji na internim putovima, strukturama koda i implementaciji softvera koji se testira. To obično zahtijeva detaljne vještine programiranja. Ova strategija pomaže u brzo pronalaženje bugova i nedostataka u odnosu na druge metode. To daje potpunu pokrivenost testiranjem osiguravajući točno što testirati u aplikaciji.
White-box testiranje uključuje temeljito testiranje aplikacije. Obično uključuje provjeru protoka podataka, iznimaka i pogrešaka. Također provjerava rukovanje defektom i uspoređuje rezultate s pisanim kodom. Odnosi se na testni tim ili sustav s punim znanjem, uz pristup svim izvornim kodovima i drugim arhitektonskim dokumentima. Testiraju internu logiku i primjenu koda.
Usporedba između bijelog i crnog okvira:
Ispitivanje u bijeloj kutiji | Ispitivanje u crnim kutijama | |
definicija | To je metoda testiranja softvera u kojoj je ispitivaču poznata unutarnja struktura, dizajn i implementacija programa. | To je metoda testiranja softvera u kojoj tester ne poznaje unutarnju strukturu, dizajn i implementaciju programa. |
Testirano od strane | To rade programeri. | To radi profesionalna ekipa za testiranje. |
Kodiranje znanja | To zahtijeva znanje o unutarnjem kodiranju. | To ne zahtijeva znanje o unutarnjem kodiranju. |
briga | Riječ je o testiranju provedbe programa. | To se ne odnosi na strukturu programa. |
Testiranje | Uglavnom se primjenjuje na nižu razinu testiranja kao što su:
| Uglavnom se primjenjuje na višu razinu testiranja kao što su:
|
Znanje | Za testiranje je potrebno znanje provedbe. | Za testiranje nije potrebno znanje provedbe. |
Osnova testa | Test slučajevi se temelje na detaljnom dizajnu. | Test slučajevi se temelje na traženim specifikacijama. |
Vrijeme | To je dugotrajno i iscrpno. | To je manje vremena i iscrpljujuće. |
Test algoritma | Pogodan je za testiranje algoritama. | Nije prikladan za testiranje algoritama. |
Metoda ispitivanja | Područje podataka i unutarnje granice su bolje testirani. | To se može učiniti samo metodom pokušaja i pogreške. |
prednosti |
|
|
Nedostaci |
|
|