Čo je to WHITE Box Testing? Techniky, príklad a Typy

Obsah:

Anonim

Testovanie bielej skrinky

White Box Testing je technika testovania softvéru, pri ktorej sa testuje vnútorná štruktúra, dizajn a kódovanie softvéru s cieľom overiť tok vstupov a výstupov a zlepšiť dizajn, použiteľnosť a bezpečnosť. Pri testovaní v bielom poli je kód testerom viditeľný, preto sa nazýva aj testovanie Clear Box, testovanie Open Box, testovanie priehľadného boxu, testovanie na základe kódu a testovanie Glass Box.

Je to jedna z dvoch častí prístupu Box Testing k testovaniu softvéru. Jeho náprotivok, testovanie Blackboxu, zahŕňa testovanie z pohľadu externého alebo koncového používateľa. Na druhej strane, testovanie White boxu v softvérovom inžinierstve je založené na vnútornom fungovaní aplikácie a točí sa okolo interného testovania.

Pojem „WhiteBox“ bol použitý kvôli konceptu priehľadnej skrinky. Jasný rámček alebo názov WhiteBox symbolizuje schopnosť vidieť cez vonkajší plášť (alebo „rámček“) softvéru do jeho vnútorných funkcií. Rovnako „čierna skrinka“ v rámci „Testovania čiernej skrinky“ symbolizuje neschopnosť vidieť vnútorné fungovanie softvéru, aby bolo možné testovať iba skúsenosti koncového používateľa.

V tomto výučbe testovania bieleho poľa sa naučíte -

  • Čo je to testovanie bielej skrinky?
  • Čo overujete pri testovaní bielej skrinky?
  • Ako vykonávate testovanie bielej skrinky?
  • Príklad testovania WhiteBox
  • Techniky testovania bielej skrinky
  • Typy testovania bielej skrinky
  • Nástroje na testovanie bielej skrinky
  • Výhody testovania bielej skrinky
  • Nevýhody testovania WhiteBox

Čo overujete pri testovaní bielej skrinky?

Testovanie bielej skrinky zahŕňa testovanie softvérového kódu na:

  • Vnútorné bezpečnostné otvory
  • Nefunkčné alebo zle štruktúrované cesty v procesoch kódovania
  • Tok konkrétnych vstupov kódom
  • Očakávaný výstup
  • Funkčnosť podmienených slučiek
  • Testovanie každého výroku, objektu a funkcie na individuálnom základe

Testovanie je možné vykonať na systémovej, integračnej a jednotkovej úrovni vývoja softvéru. Jedným zo základných cieľov testovania whitebox je overenie pracovného toku pre aplikáciu. Zahŕňa testovanie série preddefinovaných vstupov proti očakávaným alebo požadovaným výstupom, aby keď konkrétny vstup nevedie k očakávanému výstupu, narazili ste na chybu.

Ak video nie je prístupné, kliknite sem

Ako vykonávate testovanie bielej skrinky?

Aby sme vám zjednodušené vysvetlenie testovania bielej skrinky poskytli, rozdelili sme ho do dvoch základných krokov . Toto robia testeri pri testovaní aplikácie pomocou techniky testovania v bielom poli:

KROK 1) POCHOPTE ZDROJOVÝ KÓD

Prvá vec, ktorú tester často urobí, je naučiť sa zdrojový kód aplikácie a porozumieť mu. Pretože testovanie v bielej skrinke zahŕňa testovanie vnútorného fungovania aplikácie, tester musí byť veľmi dobre oboznámený s programovacími jazykmi používanými v aplikáciách, ktoré testujú. Testujúca osoba musí tiež vysoko poznať bezpečné postupy kódovania. Bezpečnosť je často jedným z hlavných cieľov testovania softvéru. Tester by mal byť schopný nájsť problémy so zabezpečením a zabrániť útokom hackerov a naivných používateľov, ktorí by mohli do aplikácie vpichnúť škodlivý kód vedome alebo nevedome.

Krok 2) VYTVORTE PRÍPADY TESTU A VYKONÁVajte

Druhým základným krokom k testovaniu bieleho poľa je testovanie správnosti toku a štruktúry zdrojového kódu aplikácie. Jedným zo spôsobov je napísanie ďalšieho kódu na otestovanie zdrojového kódu aplikácie. Tester vyvinie malé testy pre každý proces alebo sériu procesov v aplikácii. Táto metóda vyžaduje, aby tester musel mať dôkladné znalosti o kóde a často ich robí vývojár. Medzi ďalšie metódy patrí ručné testovanie, testovanie a testovanie chýb a použitie testovacích nástrojov, ktoré si ďalej vysvetlíme v tomto článku.

Príklad testovania WhiteBox

Zvážte nasledujúcu časť kódu

Printme (int a, int b) {------------ Printme je funkciaint výsledok = a + b;Ak (výsledok> 0)Tlačiť („Pozitívne“, výsledok)InakTlač („negatívny“, výsledok)} ----------- Koniec zdrojového kódu 

Cieľom testovania WhiteBox v softvérovom inžinierstve je overiť všetky vetvy rozhodovania, slučky, vyhlásenia v kóde.

Na vykonanie tvrdení vo vyššie uvedenom príklade testovania bieleho poľa by išlo o testovacie prípady WhiteBox

  • A = 1, B = 1
  • A = -1, B = -3

Techniky testovania bielej skrinky

Hlavnou technikou testovania bielej skrinky je analýza pokrytia kódu. Analýza pokrytia kódu eliminuje medzery v súprave testovacích prípadov. Identifikuje oblasti programu, ktoré sa nevykonávajú pomocou súboru testovacích prípadov. Po identifikácii medzier vytvoríte testovacie prípady na overenie nevyskúšaných častí kódu, čím zvýšite kvalitu softvérového produktu

K dispozícii sú automatizované nástroje na vykonávanie analýzy pokrytia kódom. Nižšie uvádzame niekoľko techník analýzy pokrytia, ktoré môže tester boxov používať:

Vyhlásenie pokrytie : - Táto technika vyžaduje, aby boli všetky možné výroky v kóde testované aspoň raz počas procesu testovania softvérového inžinierstva.

Branch Coverage - Táto technika kontroluje všetky možné cesty (if-else a ďalšie podmienené slučky) softvérovej aplikácie.

Okrem vyššie uvedeného existuje veľa typov pokrytia, ako napríklad Pokrytie podmienok, Pokrytie viacerých podmienok, Pokrytie ciest, Pokrytie funkcií atď. Každá technika má svoje vlastné výhody a pokúša sa vyskúšať (pokryť) všetky časti softvérového kódu. Použitím pokrytia výpisov a pobočiek všeobecne dosiahnete 80-90% pokrytie kódu, čo je dostatočné. Nasledujú dôležité techniky testovania WhiteBox:

  • Pokrytie vyhlásenia
  • Pokrytie rozhodnutia
  • Pokrytie pobočky
  • Pokrytie stavu
  • Pokrytie viacerých podmienok
  • Pokrytie stroja konečného stavu
  • Pokrytie cesty
  • Kontrolné testovanie toku
  • Testovanie dátového toku

V tomto článku nájdete ďalšie podrobnosti https://www.guru99.com/code-coverage.html

Typy testovania bielej skrinky

Testovanie bielej skrinky zahŕňa niekoľko typov testovania používaných na hodnotenie použiteľnosti aplikácie, kódu alebo konkrétneho softvérového balíka. Tu sú uvedené nižšie -

  • Testovanie jednotiek: Je to často prvý typ testovania vykonaného na aplikácii. Testovanie jednotiek sa vykonáva pri vývoji každej jednotky alebo bloku kódu. Testovanie jednotiek v podstate vykonáva programátor. Ako vývojár softvéru vyvíjate niekoľko riadkov kódu, jednu funkciu alebo objekt a testujete ho, aby ste sa uistili, že funguje, skôr ako budete pokračovať. Testovanie jednotiek pomôže identifikovať väčšinu chýb na začiatku životného cyklu vývoja softvéru. Chyby identifikované v tejto fáze sú lacnejšie a dajú sa ľahko opraviť.

  • Testovanie na únik pamäte: Úniky pamäte sú hlavnou príčinou spomalených aplikácií. Špecialista QA, ktorý má skúsenosti s detekciou úniku pamäte, je nevyhnutný v prípadoch, keď máte pomaly bežiacu softvérovú aplikáciu.

Okrem vyššie uvedeného je niekoľko typov testovania súčasťou testovania čiernej aj bielej skrinky. Sú uvedené nižšie

  • Penetračné testovanie bielej skrinky: Pri tomto testovaní má tester / vývojár úplné informácie o zdrojovom kóde aplikácie, podrobné informácie o sieti, príslušné adresy IP a všetky informácie o serveri, na ktorých je aplikácia spustená. Cieľom je napadnúť kód z niekoľkých uhlov, aby ste odhalili bezpečnostné hrozby
  • Testovanie mutácií v bielom poli : Testovanie mutácií sa často používa na objavenie najlepších kódovacích techník, ktoré sa majú použiť na rozšírenie softvérového riešenia.

Nástroje na testovanie bielej skrinky

Nižšie je uvedený zoznam najlepších nástrojov na testovanie v bielom poli.

  • Parasoft Jtest
  • EclEmma
  • NUnit
  • PyUnit
  • HTMLUnit
  • CppUnit

Výhody testovania bielej skrinky

  • Optimalizácia kódu nájdením skrytých chýb.
  • Prípady testovania v bielej skrinke možno ľahko automatizovať.
  • Testovanie je dôkladnejšie, pretože zvyčajne sú pokryté všetky cesty kódu.
  • Testovanie sa môže začať na začiatku SDLC, aj keď grafické rozhranie nie je k dispozícii.

Nevýhody testovania WhiteBox

  • Testovanie v bielej skrinke môže byť dosť zložité a drahé.
  • Vývojári, ktorí zvyčajne vykonávajú testovacie prípady v bielom poli, to nenávidia. Testovanie bielej skrinky vývojármi nie je podrobné, môže viesť k výrobným chybám.
  • Testovanie bielej skrinky vyžaduje profesionálne zdroje s podrobným porozumením programovania a implementácie.
  • Testovanie bielej skrinky je časovo náročné, väčšie programovacie aplikácie si vyžadujú čas na úplné testovanie.

Záverečné poznámky:

  • Testovanie v bielej skrinke môže byť pomerne zložité. Zložitosť má veľa spoločného s testovanou aplikáciou. Malou aplikáciou, ktorá vykonáva jedinú jednoduchú operáciu, by mohlo byť testovanie bielej skrinky za pár minút, zatiaľ čo veľkým programovacím aplikáciám trvá úplné testovanie niekoľko dní, týždňov a ešte dlhšie.
  • Testovanie bielej skrinky pri testovaní softvéru by sa malo robiť na softvérovej aplikácii, ktorá sa vyvíja po napísaní a po každej zmene