black box testing an depth tutorial with examples
V tomto výučbe sa pomocou mojich priemyselných skúseností v oblasti testovania softvéru oboznámime s typmi a technikami testovania Black-box spolu s jeho procesom, výhodami, nevýhodami a niektorými automatizačnými nástrojmi na jeho testovanie okrem manuálneho testovania.
Dozvieme sa tiež o rozdieloch medzi testovaním bielej skrinky a testovaním čiernej skrinky.
Zoznam tutoriálov „Techniky testovania čiernej skrinky“:
Výukový program č. 1: Čo je to testovanie čiernej skrinky
Výukový program č. 2: Čo je to testovanie bielej skrinky
Výukový program č. 3: Zjednodušené funkčné testovanie
Výukový program č. 4: Čo je Testovanie prípadov
Výukový program č. 5 : Technika testovania ortogonálneho poľa
Techniky
Výukový program č. 6: Analýza hraničných hodnôt a rozdelenie ekvivalencie
Výukový program č. 7: Testovanie rozhodovacej tabuľky
Výukový program č. 8: Štátne prechodové testovanie
Výukový program č. 9 : Hádanie chýb
Výukový program č. 10: Grafické testovacie metódy
Takmer každý z nás každý deň vykonáva testovanie čiernej skrinky!
Či už sme sa dozvedeli alebo nie, všetci sme v každodennom živote mnohokrát testovali test Black Box !!
Už zo samotného názvu asi pochopíte, že implikuje interakciu so systémom, ktorý testujete ako záhadnú skrinku. Znamená to, že nemáte dostatočné vedomosti o vnútornej práci systému, ale viete, ako by sa mal správať.
Ak vezmeme príklad aby sme vyskúšali naše auto alebo bicykel, vždy na ňom jazdíme, aby sme sa ubezpečili, že sa nespráva neobvykle. Vidíš? Testovanie čiernej skrinky sme už vykonali.
Čo sa dozviete:
- Čo je to testovanie čiernej skrinky?
- Druhy testovania čiernej skrinky
- Nástroje na testovanie čiernej skrinky
- Techniky testovania čiernej skrinky
- Ako postupovať krok za krokom?
- Výhody a nevýhody
- Rozdiel medzi testovaním bielej skrinky a testovaním čiernej skrinky
- Záver
- Odporúčané čítanie
Čo je to testovanie čiernej skrinky?
Testovanie čiernej skrinky je tiež známe ako behaviorálne, nepriehľadné skrinky, uzavreté skrinky, testy založené na špecifikáciách alebo z očí do očí.
Jedná sa o metódu testovania softvéru, ktorá analyzuje funkčnosť softvéru / aplikácie bez toho, aby sa veľa vedelo o vnútornej štruktúre / dizajne testovanej položky, a porovnáva vstupnú hodnotu s výstupnou hodnotou.
typy chýb v testovaní softvéru
Testovanie Black Box sa zameriava hlavne na funkčnosť systému ako celku. Termín „Testovanie správania“ sa tiež používa na testovanie čiernej skrinky. Dizajn testu správania sa mierne líši od koncepcie testu čiernej skrinky, pretože použitie interných znalostí nie je prísne zakázané, ale stále sa odrádza.
Každá testovacia metóda má svoje vlastné výhody a nevýhody. Existujú chyby, ktoré nemožno nájsť pomocou techniky iba čiernej skrinky alebo iba bielej skrinky.
Väčšina aplikácií je testovaná metódou Black Box. Musíme pokryť väčšinu testovacích prípadov, aby väčšinu chýb odhalila a Čierna krabica metóda.
K tomuto testovaniu dochádza počas vývoja softvéru a testovania životného cyklu, tj. Vo fázach testovania jednotky, integrácie, systému, prijatia a regresie.
Môže to byť funkčné aj nefunkčné.
Druhy testovania čiernej skrinky
Prakticky existuje niekoľko typov testovania čiernej skrinky, ktoré sú možné, ale ak vezmeme do úvahy ich hlavný variant, potom sú uvedené dva základné.
# 1) Funkčné testovanie
Tento typ sa zaoberá funkčnými požiadavkami alebo špecifikáciami aplikácie. Tu sa testujú rôzne akcie alebo funkcie systému poskytnutím vstupu a porovnaním skutočného výstupu s očakávaným výstupom.
Napríklad ,keď testujeme rozbaľovací zoznam, klikneme naň a overíme, či sa rozširuje a či sa v zozname zobrazujú všetky očakávané hodnoty.
Niekoľko hlavných typov funkčných testov je:
- Testovanie dymu
- Testovanie príčetnosti
- Testovanie integrácie
- Testovanie systému
- Regresné testovanie
- Testovanie prijatia používateľa
=> Prečítajte si viac na Funkčné testovanie .
# 2) Nefunkčné testovanie
Okrem funkcionality požiadaviek je potrebné testovať aj niekoľko nefunkčných aspektov, aby sa zlepšila kvalita a výkon aplikácie.
Medzi niekoľko hlavných typov nefunkčných testov patrí:
- Testovanie použiteľnosti
- Testovanie záťaže
- Testovanie výkonu
- Testovanie kompatibility
- Stresové testovanie
- Testovanie škálovateľnosti
=> Prečítajte si viac na Nefunkčné testovanie .
Nástroje na testovanie čiernej skrinky
Nástroje na testovanie čiernej skrinky sú hlavne nástroje na záznam a prehrávanie. Tieto nástroje sa používajú na testovanie regresie na kontrolu, či nové zostavenie nevytvorilo chybu v predchádzajúcej funkčnosti fungujúcej aplikácie.
čo je sieťový kľúč pre wifi
Tieto nástroje na záznam a prehrávanie zaznamenávajú testovacie prípady vo forme niektorých skriptov, ako sú TSL, VB skript, Javascript, Perl atď.
Techniky testovania čiernej skrinky
Na systematické testovanie súboru funkcií je potrebné navrhnúť testovacie prípady. Testéri môžu vytvoriť testovacie prípady z dokumentu so špecifikáciou požiadaviek pomocou nasledujúcich techník testovania čiernej skrinky.
- Rozdelenie ekvivalencie
- Analýza hraničných hodnôt
- Testovanie rozhodovacej tabuľky
- Štátne prechodové testovanie
- Hádanie chýb
- Grafické testovacie metódy
- Porovnávacie testovanie
Poďme pochopiť každú techniku podrobne.
# 1) Rozdelenie ekvivalencie
Táto technika je známa aj ako rozdelenie triedy ekvivalencie (ECP). V tejto technike sú vstupné hodnoty do systému alebo aplikácie rozdelené do rôznych tried alebo skupín na základe podobnosti výsledku.
Preto namiesto použitia každej vstupnej hodnoty môžeme teraz na testovanie výsledku použiť ktorúkoľvek z hodnôt zo skupiny / triedy. Týmto spôsobom môžeme udržiavať pokrytie testu, zatiaľ čo môžeme znížiť množstvo prepracovania a hlavne stráveného času.
Napríklad:
Ako je znázornené na vyššie uvedenom obrázku, textové pole „VEK“ prijíma iba čísla od 18 do 60. K dispozícii budú tri skupiny tried alebo skupín.
Dve neplatné triedy budú:
a) Menej alebo rovné 17.
b) Väčší alebo rovný 61.
Jedna platná trieda bude čokoľvek medzi 18 a 60 rokmi.
Zredukovali sme tak testovacie prípady na iba 3 testovacie prípady na základe vytvorených tried, čím sme pokryli všetky možnosti. Na otestovanie vyššie uvedeného scenára teda stačí testovanie s kýmkoľvek z každej sady triedy.
=> Odporúčané čítanie - Čo je rozdelenie ekvivalencie?
# 2) Analýza hraničných hodnôt
Už zo samotného názvu môžeme pochopiť, že v tejto technike sa zameriavame na hodnoty na hraniciach, pretože sa zistilo, že mnoho aplikácií má na hraniciach veľké množstvo problémov.
Hranica znamená hodnoty blízke hranici, kde sa mení správanie systému. V analýze hraničných hodnôt sa testujú platné aj neplatné vstupy, aby sa overili problémy.
Napríklad:
Ak chceme otestovať pole, kde by mali byť akceptované hodnoty od 1 do 100, zvolíme hraničné hodnoty: 1-1, 1, 1 + 1, 100-1, 100 a 100 + 1. Namiesto použitia všetkých hodnôt od 1 do 100 použijeme iba 0, 1, 2, 99, 100 a 101.
# 3) Testovanie rozhodovacej tabuľky
Ako už sám názov napovedá, všade tam, kde existujú logické vzťahy, ako napríklad:
Ak
{
(Podmienka = Pravda)
potom action1;
}
else akcia2; / * (podmienka = nepravda) * /
Potom tester identifikuje dva výstupy (action1 a action2) pre dve podmienky (True a False). Takže na základe pravdepodobných scenárov je vyrezaná rozhodovacia tabuľka, aby sa pripravila sada testovacích prípadov.
Napríklad:
Vezmite si príklad banky XYZ, ktorá poskytuje úrokovú sadzbu pre seniora Muža ako 10% a pre ostatných ľudí 9%.
V tomto príklade podmienky má C1 dve hodnoty ako true a false, podmienka C2 má tiež dve hodnoty ako true a false. Počet celkových možných kombinácií by potom bol štyri. Takto môžeme odvodiť testovacie prípady pomocou rozhodovacej tabuľky.
dvojitý koniec frontu c ++
# 4) Testovanie stavu prechodu
Testovanie prechodového stavu je technika, ktorá sa používa na testovanie rôznych stavov testovaného systému. Stav systému sa mení v závislosti od podmienok alebo udalostí. Udalosti spúšťajú stavy, ktoré sa stávajú scenármi, a tester ich musí otestovať.
Systematický diagram prechodu stavu poskytuje jasný prehľad o zmenách stavu, ale je efektívny pre jednoduchšie aplikácie. Zložitejšie projekty môžu viesť k zložitejším diagramom prechodu, čím sa zníži ich efektívnosť.
Napríklad:
# 5) Hádanie chýb
Toto je klasický príklad testovania na základe skúseností.
V tejto technike môže tester na základe odhadov oblastí náchylných na chyby využiť svoje skúsenosti so správaním a funkciami aplikácie. Mnoho chýb je možné nájsť pomocou odhadov chýb, kde sa väčšina vývojárov zvyčajne mýli.
Niekoľko bežných chýb, ktoré vývojári zvyčajne zabúdajú vyriešiť:
- Delíme nulou.
- Spracovanie nulových hodnôt v textových poliach.
- Prijatie tlačidla Odoslať bez akejkoľvek hodnoty.
- Nahrávanie súborov bez prílohy.
- Nahrávanie súborov je menšie alebo väčšie ako limitná veľkosť.
# 6) Metódy testovania na základe grafov
Každá aplikácia je zostavením niektorých objektov. Všetky tieto objekty sú identifikované a je pripravený graf. Z tohto objektového grafu je identifikovaný každý objektový vzťah a podľa toho sa zapisujú testovacie prípady, aby sa zistili chyby.
# 7) Porovnávacie testovanie
Na testovanie v tejto metóde sa na porovnanie používajú rôzne nezávislé verzie rovnakého softvéru.
Ako postupovať krok za krokom?
Všeobecne platí, že ak sa pri testovaní projektu / aplikácie postupuje podľa systematického procesu, kvalita sa zachová a je z dlhodobého hľadiska užitočná pre ďalšie kolá testovania.
- Najdôležitejším krokom je porozumieť špecifikácii požiadaviek aplikácie. Mal by existovať riadny zdokumentovaný SRS (špecifikácia požiadaviek na softvér).
- Pomocou vyššie spomenutých techník testovania čiernej skrinky, ako je analýza hraničných hodnôt, rozdelenie ekvivalencie atď., Sú súbory platných a neplatných vstupov identifikované s požadovanými výstupmi a na základe toho sú navrhnuté testovacie prípady.
- Navrhnuté testovacie prípady sa vykonávajú s cieľom skontrolovať, či vyhovujú alebo zlyhajú, a to overením skutočných výsledkov s očakávanými výsledkami.
- Zlyhané testovacie prípady sa označia ako defekty / chyby a adresujú sa vývojovému tímu, ktorý ich opraví.
- Ďalej na základe odstránených chýb tester opätovne skontroluje chyby, aby overil, či sa opakujú alebo nie.
Výhody a nevýhody
Výhody
- Tester nemusí mať technické vzdelanie. Je dôležité testovať tým, že ste v koži používateľa, a myslieť z pohľadu používateľa.
- Testovanie je možné spustiť po dokončení vývoja projektu / aplikácie. Testéri aj vývojári pracujú nezávisle bez toho, aby si navzájom zasahovali do priestoru.
- Je to efektívnejšie pre veľké a zložité aplikácie.
- Nedostatky a nezrovnalosti je možné zistiť už v počiatočnej fáze testovania.
Nevýhody
- Bez akýchkoľvek technických alebo programátorských znalostí existuje šanca ignorovať možné podmienky testovaného scenára.
- V stanovenom čase existujú možnosti menej testovať a preskočiť všetky možné vstupy a ich výstupné testovanie.
- Kompletné pokrytie testom nie je možné pre veľké a zložité projekty.
Rozdiel medzi testovaním bielej skrinky a testovaním čiernej skrinky
Ďalej je uvedených niekoľko rozdielov medzi nimi:
Testovanie čiernej skrinky | Testovanie bielej skrinky |
---|---|
Jedná sa o testovaciu metódu bez znalosti skutočného kódu alebo vnútornej štruktúry aplikácie | Jedná sa o testovaciu metódu so znalosťami skutočného kódu a vnútornej štruktúry aplikácie |
Toto je testovanie na vyššej úrovni, ako je funkčné testovanie. | Tento typ testovania sa vykonáva na nižšej úrovni testovania, ako je napríklad Unit Testing, Integration Testing |
Zameriava sa na funkčnosť testovaného systému | Zameriava sa na aktuálny kód - program a jeho syntax |
Testovanie čiernej skrinky vyžaduje na testovanie špecifikáciu požiadavky | Testovanie bielej skrinky vyžaduje dokumenty dizajnu s diagramami, vývojovými diagramami atď. |
Testovanie čiernej skrinky vykonávajú testeri | Testovanie bielej skrinky vykonávajú vývojári alebo testeri so znalosťami programovania. |
Záver
Toto je niekoľko základných bodov týkajúcich sa testovania Black Box a prehľadu jeho techník a metód.
Pretože nie je možné vyskúšať všetko so zapojením človeka so stopercentnou presnosťou, ak sa vyššie uvedené techniky a metódy použijú efektívne, určite to zlepší kvalitu systému.
Na záver je potrebné uviesť, že ide o veľmi užitočnú metódu na overenie funkčnosti systému a identifikáciu väčšiny chýb.
Dúfam, že by ste získali dôkladné znalosti o technike Black Box Testing.
Odporúčané čítanie
- Kľúčové rozdiely medzi testovaním čiernej skrinky a testovaním bielej skrinky
- Najlepšie nástroje na testovanie softvéru 2021 (QA Test Automation Tools)
- Funkčné testovanie vs. Nefunkčné testovanie
- Výukový program pre párové testovanie alebo testovanie všetkých párov s nástrojmi a príkladmi
- Testovanie bielej skrinky: Kompletný sprievodca s technikami, príkladmi a nástrojmi
- Výukový program na testovanie objemu: Príklady a nástroje na testovanie objemu
- Výukový program na testovanie konfigurácie s príkladmi
- Stiahnutie e-knihy Testing Primer