Testování šedé skříňky - Gray box testing
Gray-box testování (Mezinárodní anglický pravopis: testování šedé skříňky) je kombinací testování bílé skříňky a testování černé skříňky. Cílem tohoto testování je vyhledat případné vady způsobené nesprávnou strukturou nebo nesprávným použitím aplikací.[1][2]
Přehled
Tester černé skříňky neví o vnitřní struktuře aplikace, která má být testována, zatímco tester bílé skříňky má přístup k vnitřní struktuře aplikace. Tester v šedé skříňce částečně zná vnitřní strukturu, která zahrnuje přístup k dokumentaci interních datových struktur i použitým algoritmům.[3]
Testeři šedé skříně vyžadují jak vysoké, tak podrobné dokumenty popisující aplikaci, které shromažďují za účelem definování testovacích případů.[4]
Potřeba testování šedé skříňky
Testování šedé skříňky je výhodné, protože využívá přímou techniku testování černé skříňky a kombinuje ji se systémy zaměřenými na kód v testování bílé skříňky.
Testování šedé skříňky je založeno na generování testovacích případů požadavku, protože představuje všechny podmínky před testováním programu pomocí metody tvrzení. Požadavek specifikační jazyk slouží k usnadnění pochopení požadavků a ověření jejich správnosti.[5]
Předpoklady testování šedé skříňky pro objektově orientovaný software
Objektově orientovaný software sestává primárně z objektů; kde objekty jsou jednotlivé nedělitelné jednotky mající spustitelný kód a / nebo data. Níže jsou uvedeny některé předpoklady, které jsou potřebné pro aplikaci testování šedého pole použití.
- Aktivace metod[6]
- Hlášení stavu v testované třídě (CUT).
- Testování sestavy je nedílnou součástí třídy pod testem.[5]
Příklady
- Architektonický model
- Unifikovaný Modelovací Jazyk - Návrhový model UML
- Konečný stavový stroj - Státní model.[7][8]
Techniky
Cem Kaner definuje „testování v šedé skříňce jako zahrnující vstupy a výstupy, ale design testu je vychováván informacemi o kódu nebo programové operaci, která by normálně byla mimo dohled testeru“.[9] Techniky testování šedé skříňky jsou:
- Maticové testování: uvádí zprávu o stavu projektu.
- Regresní testování: znamená to opětovné spuštění testovacích případů, pokud dojde k novým změnám.
- Testování vzorů: ověřte dobrou aplikaci pro svůj design nebo architekturu a vzory.
- Testování ortogonálního pole: používá se jako podmnožina všech možných kombinací. [10]
Účinky
Pozitivní účinky
- Nabízí kombinované výhody: Jelikož testování Gray-box je kombinací testování white-box a black-box, přináší výhody obou testů.
- Non Intrusive: Je založen na funkční specifikaci, architektonickém pohledu, zatímco ne na zdrojovém kódu nebo binárních souborech, díky nimž je také invazivní.
- Intelligent Test Authoring: Gray-box tester zpracovává scénář inteligentního testu, například zpracování datových typů, komunikační protokol, zpracování výjimek.
- Nestranné testování: Navzdory všem výše uvedeným výhodám a funkcím udržuje testování Gray-box hranice pro testování mezi testerem a vývojářem.[11]
Negativní účinky
- Částečné pokrytí kódem: Při testování šedých polí chybí zdrojový kód nebo binární soubory z důvodu omezeného přístupu k interní nebo struktuře aplikací, což má za následek omezený přístup k procházení cesty kódu.
- Identifikace defektu: V distribuovaných aplikacích je obtížné přidružit identifikaci defektu. Přesto je testování Gray-box požehnáním pro zjištění, jak vhodné tyto systémy vyvolávají výjimky a jak jemné jsou tyto výjimky zpracovávané v distribuovaných systémech s prostředím webových služeb.[11][12]
Aplikace
- Testování šedé skříňky je vhodné pro webové aplikace. Webové aplikace mají distribuovanou síť nebo systémy; vzhledem k absenci zdrojového kódu nebo binárních souborů není možné použít testování bílé skříňky. Testování černé skříňky se také nepoužívá kvůli pouhé smlouvě mezi zákazníkem a vývojářem, takže je efektivnější používat testování šedé skříňky, protože významné informace jsou k dispozici v Jazyk popisu webových služeb (WSDL).[13]
- Gray-box testování je vhodné pro testování funkčních nebo obchodních domén. Funkční testování se provádí v zásadě testem interakcí uživatelů s externími systémy. Testování šedé skříňky je díky svým vlastnostem vhodné pro funkční testování; také pomáhá potvrdit, že software splňuje požadavky definované pro software.[14][15][16][17]
Budoucí rozsah
Distribuovaná povaha webové služby umožňuje testování šedé skříňky k detekci závad v rámci a architektura orientovaná na služby (SOA). Jak víme, testování bílé skříňky není vhodné pro webové služby, protože se zabývá přímo vnitřními strukturami. Testování bílé skříňky lze použít pro nejmodernější metody; například mutace zprávy, která generuje automatické testy pro velká pole, aby pomohla stavům zpracování výjimek, toku bez zdrojového kódu nebo binárních souborů. Taková strategie je užitečná k posunutí testování šedé skříňky blíže k výsledkům testování bílé skříňky.
Viz také
Reference
- ^ „Microsoft Research - objevující se technologie, počítač a software“ (PDF).
- ^ „Archivovaná kopie“ (PDF). Archivovány od originál (PDF) dne 29. března 2012. Citováno 17. října 2011.CS1 maint: archivovaná kopie jako titul (odkaz)
- ^ „Testování šedé skříňky“. Základy testování softwaru. 4. listopadu 2011. Citováno 19. ledna 2012.
- ^ "Příklad testování šedého pole s definicí". Geekinterview.com. Citováno 19. ledna 2012.
- ^ A b Jake Rogers (8. srpna 2016). „Časté otázky týkající se testování šedé skříňky“. cgsec.co.uk. Citováno 8. srpna 2016.
- ^ "Objektově orientovaná rozšíření na Pascal". Pascal-central.com. Citováno 19. ledna 2012.
- ^ Patton, Ron (26. července 2005). Testování softwaru. Sams. p.2. ISBN 978-0-672-32798-8.
- ^ „Archivovaná kopie“ (PDF). Archivovány od originál (PDF) dne 3. dubna 2012. Citováno 17. října 2011.CS1 maint: archivovaná kopie jako titul (odkaz)
- ^ Nguyen, Hung Q (2001). Testování aplikací na webu: Plánování testů pro systémy založené na internetu. John Wiley & Sons. ISBN 9780471437642.
- ^ „Prozkoumejte svět testování šedé skříňky“. Extremesoftwaretesting.com. Citováno 19. ledna 2012.
- ^ A b „Nástroje pro testování SOA pro černé, bílé a šedé krabičky Techniky testování SOA“. Crosschecknet.com. Archivovány od originál dne 1. října 2018. Citováno 19. ledna 2012.
- ^ „E33 Gray Box Testing.PDF“ (PDF).
- ^ Ramdeo, Anand (5. května 2011). „Testování šedé skříňky - software“. Testování Geek. Citováno 19. ledna 2012.
- ^ Bach, James. Poučení z testování softwaru. Wiley Computer Publishing.
- ^ Falk, Jacku. Testování počítačového softwaru, 2. vydání. Wiley Computer Publishing.
- ^ http://legacy.cleanscape.net/docs_lib/paper_graybox.pdf
- ^ Li, Z. J .; Tan, H.F .; Liu, H. H .; Zhu, J .; Mitsumori, N. M. (6. dubna 2010). "Šedé pole SOA testování na základě obchodního procesu". IBM Systems Journal. 47 (3): 457–472. doi:10.1147 / sj.473.0457.