Testování bílého boxu vs. černého boxu
Pojmy White-Box a Black-Box se používají v softwarovém inženýrství. To jsou dva testovací přístupy, které se používají při testování softwaru, což je proces, který zákazníkovi poskytuje ujištění o kvalitě softwaru. Testování softwaru (které se obvykle provádí spuštěním softwaru) se provádí se záměrem najít chyby (známé také jako softwarové chyby) v softwaru.
Co je testování White-Box?
Testování v bílé krabici se používá k testování softwarového systému založeného na struktuře systému. Je to spíše průhledná krabice, přes kterou vidíme, co se děje uvnitř. Hluboce testuje, jak každý modul systému reaguje na dané vstupy. Takové testování zabere mnoho času, protože je nutné zkontrolovat řídicí struktury, smyčky, podmínky, funkce atd. Testovací techniky tohoto přístupu zahrnují testování datového toku, testování řídicího toku, testování větví a cest pro každou jednotku. K provedení tohoto druhu testování jsou zapotřebí vysoce technické testery. Provedením testu bílé skříňky je snazší vystopovat chyby, které jsou v systému k dispozici. White-box testování přidává projektu další zátěž, protože v některých situacích je nutné generovat testovací případy jako samostatné projekty pro jednotlivé testovací oblasti. To má nakonec negativní dopad na náklady projektu a harmonogram.
Co je testování Black-Box?
Testování černé skříňky se používá k testování pouze funkčnosti systému bez ohledu na to, jak systém provádí nějakou akci. Zaměřuje se především na zajištění toho, aby byly splněny systémové požadavky. Je to podobné jako v uzavřené krabici, kde pouze víme, co krmíme, a nakonec dává výstup, ale nevíme, jak byl výstup vyroben. Testovací techniky zahrnují; testování rozhodovacích tabulek, přechodové tabulky stavů, ekvivalentní rozdělení atd. pro testování na vyšší úrovni. Toto testování zabere kratší dobu ve srovnání s testováním white-box, protože se týká pouze testování, zda systém poskytuje očekávaný výstup podle daného vstupu. Testovací případy jsou generovány pouze podle systémových požadavků. Technické dovednosti testera se příliš neočekávají. Pokud dojde k chybě v systému, není snadné ji sledovat, protože netestuje vnitřní proces.
Obě tyto techniky se obvykle používají v prostředí vývoje softwaru, aby se zajistilo, že celý software funguje správně. Neexistuje žádný konkrétní příkaz k provádění těchto dvou testování a přístupy nepatří do žádné konkrétní fáze životního cyklu vývoje softwaru. Testování černé skříňky však může provádět samostatný tým, zatímco testování bílé skříňky přednostně provádějí sami vývojáři nebo programátoři kromě samostatného testovacího týmu.
Jaký je rozdíl mezi White-Box Testing a Black-Box Testing?
• White-box testování provádí testy struktury systému
• Testovací testy černé skříňky k ověření, zda je systémový požadavek odpovídajícím způsobem splněn
• Testování v bílé krabici vyžaduje vysoce technické testery
• Technické znalosti testera se pro testování v černé skříňce příliš neočekávají
• Snadno sledovatelné interní chyby v testování white-box
• Snadné provedení testu, abyste viděli, jak bude systém fungovat pomocí testování v černé skříňce