Klíčový rozdíl : Testování na bílé skříni je technikou testování softwaru, při níž zkušební laboratoř je známá a přihlédnutá k internímu zpracování aplikace, která má být testována. Testování na black-boxu je technikou testování softwaru, kde aplikace zkoušeného programu není testovateli známa, nebo není brána v potaz.
Testování černé krabice je testovací strategie založená výhradně na požadavcích a specifikacích. Nevyžaduje žádné znalosti o interních cestách, strukturách nebo implementaci softwaru v aplikacích, které jsou testovány. Tato strategie však minimalizuje přístup testeru při hledání chyb nebo závad v testovacím programu. Také chyby nejsou opraveny kvůli nedostatku interní aplikační znalosti testeru.
Testování černé krabice se provádí na vnější úrovni systému; jednoduše kontroluje, zda je výstup pro daný vstup správný. Funkce aplikace jsou kontrolovány a testovány. Také uživatelské znalosti o vnitřním toku nebo návrhu systému nejsou nutné, protože prostě testují systém bez jakýchkoli informací o tom, jak je systém vytvořen.
Testování na bílém poli je testovací strategie založená na interních cestách, kódových strukturách a implementaci testovaného softwaru. To obecně vyžaduje podrobné programovací dovednosti. Tato strategie pomáhá rychle najít chyby a vady ve srovnání s jinými metodami. Poskytuje kompletní testovací pokrytí tím, že přesně zajistí, co v aplikaci testovat.
Bílé testování zahrnuje důkladné testování aplikace. Obvykle zahrnuje kontrolu s datovým tokem, výjimkami a chybami. Také kontroluje zacházení s poruchami a porovnává výsledky s písemným kódem. Jedná se o zkušební tým nebo systém s plnými znalostmi, spolu s přístupem ke všem zdrojovým kódům a dalším architektonickým dokumentům. Testují interní logiky a aplikace kódu.
Srovnání testů White-Box a Black-box:
Testování bílé krabice | Testování na černé skříni | |
Definice | Jedná se o metodu testování softwaru, ve které je tester známá vnitřní strukturou, návrhem a implementací programu. | Jedná se o metodu testování softwaru, v níž není testerovi známa vnitřní struktura, návrh a implementace programu. |
Testováno | To dělají vývojáři softwaru. | Vykonává to profesionální zkušební tým. |
Kódování znalostí | To vyžaduje znalost interního kódování. | To nevyžaduje znalost interního kódování. |
Znepokojení | Jedná se o testování provádění programu. | Netýká se struktury programu. |
Testování | Používá se hlavně pro nižší úroveň testování, jako jsou:
| To platí hlavně pro vyšší úroveň testování, jako jsou:
|
Znalost | Pro testování jsou potřebné znalosti implementace. | Pro testování nejsou nutné znalosti implementace. |
Testovací základ | Testovací případy jsou založeny na designu detailů. | Testovací případy jsou založeny na požadovaných specifikacích. |
Čas | Je to časově náročné a vyčerpávající. | Je méně časově náročné a vyčerpávající. |
Test algoritmu | Je vhodný pro testování algoritmů. | Není vhodná pro testování algoritmů. |
Metoda testování | Datová doména a vnitřní hranice jsou lépe testovány. | To lze provést pouze zkušební a chybovou metodou. |
Výhody |
|
|
Nevýhody |
|
|