black box testing an depth tutorial with examples
V tej vadnici se bomo na podlagi mojih industrijskih izkušenj pri preizkušanju programske opreme seznanili z vrstami in tehnikami preizkušanja črne skrinjice ter njenimi postopki, prednostmi, slabostmi in nekaterimi orodji za avtomatizacijo, razen ročnega testiranja.
Spoznali bomo tudi razlike med preskušanjem bele škatle in testiranjem črne škatle.
Seznam vaj »Preizkusne tehnike črne škatle«:
Vadnica št. 1: Kaj je testiranje črne škatle
Vadnica # 2: Kaj je testiranje bele škatle
Vadnica št. 3: Poenostavljeno funkcionalno preskušanje
Vadnica # 4: Kaj je preizkušanje uporabnih primerov
Vadnica št. 5 : Tehnika preskušanja pravokotnih nizov
Tehnike
Vadnica # 6: Analiza mejne vrednosti in delitev enakovrednosti
Vadnica št. 7: Preskušanje tabele odločitev
Vadnica št. 8: Testiranje državnega prehoda
Vadnica št. 9 : Ugibanje napak
Vadnica št. 10: Grafične metode preskušanja
Skoraj vsi izvajamo testiranje črne skrinjice vsak dan!
Ne glede na to, ali smo se naučili ali ne, smo v svojem vsakdanjem življenju že večkrat preizkusili črno skrinjico!
Že iz samega imena verjetno razberete, da pomeni interakcijo s sistemom, ki ga preizkušate kot skrivnostno polje. To pomeni, da niste dovolj dobro obveščeni o notranjem delovanju sistema, vendar veste, kako bi se moral obnašati.
Če vzamemo primer da preizkusimo svoj avto ali kolo, ga vedno vozimo, da se prepričamo, da se ne obnaša nenavadno. Vidiš? Testiranje črne škatle smo že opravili.
Kaj se boste naučili:
- Kaj je testiranje črne skrinjice?
- Vrste preizkušanja črnih skrinjic
- Orodja za testiranje črne škatle
- Tehnike preizkušanja črne škatle
- Kako narediti korak za korakom?
- Prednosti in slabosti
- Razlika med preskušanjem bele škatle in preskušanjem črne škatle
- Zaključek
- Priporočeno branje
Kaj je testiranje črne skrinjice?
Testiranje črne škatle je znano tudi kot vedenjsko, neprozorno, zaprto, specifikacijsko ali očesno testiranje.
To je metoda preskušanja programske opreme, ki analizira funkcionalnost programske opreme / aplikacije, ne da bi vedela veliko o notranji strukturi / zasnovi izdelka, ki se preskuša, in primerja vhodno vrednost z izhodno vrednostjo.
brezplačna programska oprema za pretvorbo videoposnetkov za Windows
Glavni poudarek pri testiranju črne škatle je na funkcionalnosti sistema kot celote. Izraz „Vedenjsko testiranje“ se uporablja tudi za testiranje črne škatle. Načrtovanje vedenjskih testov se nekoliko razlikuje od testa črne skrinjice, ker uporaba notranjega znanja ni strogo prepovedana, vendar je vseeno odsvetovana.
Vsaka preskusna metoda ima svoje prednosti in slabosti. Obstaja nekaj napak, ki jih ni mogoče najti z uporabo samo črne škatle ali samo bele škatle.
Večina aplikacij je preizkušenih z metodo Black Box. Zajeti moramo večino testnih primerov, da bo večino napak odkril a Črna škatla metoda.
To preskušanje se izvaja v celotnem razvoju programske opreme in preskusu življenjskega cikla, tj. V enotah, integraciji, sistemu, sprejemu in regresijskem preskušanju.
To je lahko funkcionalno ali nefunkcionalno.
Vrste preizkušanja črnih skrinjic
Praktično obstaja več vrst preizkušanja črnih skrinjic, vendar če upoštevamo njegovo glavno različico, sta spodaj navedeni dve temeljni.
# 1) Funkcionalno preskušanje
Ta vrsta obravnava funkcionalne zahteve ali specifikacije aplikacije. Tu se preizkušajo različna dejanja ali funkcije sistema, tako da se zagotovi vhod in primerja dejanski izhod s pričakovanim izhodom.
Na primer ,ko preizkusimo spustni seznam, ga kliknemo in preverimo, ali se razširi in so na seznamu prikazane vse pričakovane vrednosti.
Nekaj glavnih vrst funkcionalnega testiranja je:
- Preskušanje dima
- Preizkušanje razumnosti
- Integracijsko preskušanje
- Testiranje sistema
- Testiranje regresije
- Preizkus sprejemljivosti uporabnika
=> Preberite več o tem Funkcionalno preskušanje .
# 2) Nefunkcionalno testiranje
Poleg funkcionalnosti zahtev obstaja še nekaj nefunkcionalnih vidikov, ki jih je treba preizkusiti za izboljšanje kakovosti in učinkovitosti aplikacije.
Nekaj glavnih vrst nefunkcionalnega testiranja vključuje:
- Testiranje uporabnosti
- Preskušanje obremenitve
- Testiranje učinkovitosti
- Preskušanje združljivosti
- Testiranje izjemnih situacij
- Testiranje razširljivosti
=> Preberite več o tem Nefunkcionalno preskušanje .
Orodja za testiranje črne škatle
Orodja za testiranje črne skrinjice so v glavnem orodja za snemanje in predvajanje. Ta orodja se uporabljajo za testiranje regresije, da se preveri, ali je nova gradnja ustvarila napako v prejšnji delujoči funkcionalnosti aplikacije.
Ta orodja za snemanje in predvajanje zapisujejo testne primere v obliki nekaterih skriptov, kot so TSL, VB script, Javascript, Perl itd.
Tehnike preizkušanja črne škatle
Za sistematično testiranje nabora funkcij je treba oblikovati testne primere. Preizkuševalci lahko ustvarijo testne primere iz dokumenta s specifikacijami zahtev z uporabo naslednjih tehnik testiranja črne škatle.
- Enakovrednost razdelitve
- Analiza mejne vrednosti
- Preskušanje tabele odločitev
- Testiranje državnega prehoda
- Ugibanje napak
- Grafične metode preskušanja
- Primerjalno testiranje
Podrobno razumemo vsako tehniko.
# 1) Enakovredna particija
Ta tehnika je znana tudi kot particioniranje razreda enakovrednosti (ECP). V tej tehniki so vhodne vrednosti sistema ali aplikacije razdeljene v različne razrede ali skupine glede na njegovo podobnost v izidu.
Namesto da uporabimo vsako vhodno vrednost, lahko zdaj za preizkus rezultata uporabimo katero koli vrednost iz skupine / razreda. Na ta način lahko ohranimo pokritost s testom, hkrati pa lahko zmanjšamo veliko predelave in kar je najpomembneje porabljenega časa.
Na primer:
najboljši brezplačni optimizator za Windows 7
Kot je prikazano na zgornji sliki, besedilno polje »STAROST« sprejema samo številke od 18 do 60. Na voljo bodo trije sklopi razredov ali skupin.
Dva neveljavna razreda bosta:
a) Manj ali enako 17.
b) večje od ali enako 61.
En veljaven razred bo vse od 18 do 60.
Tako smo testne primere na podlagi oblikovanih razredov zmanjšali na le 3 testne primere in s tem pokrili vse možnosti. Torej, preizkušanje katere koli vrednosti iz vsakega niza razreda zadostuje za preizkus zgornjega scenarija.
=> Priporočeno branje - Kaj je enakovredna particija?
# 2) Analiza mejne vrednosti
Že iz samega imena lahko razberemo, da se pri tej tehniki osredotočamo na vrednosti na mejah, saj je ugotovljeno, da ima veliko aplikacij veliko težav na mejah.
Meja pomeni vrednosti blizu meje, kjer se vedenje sistema spremeni. Pri analizi mejnih vrednosti se preverjajo veljavni vhodi in neveljavni vhodi, da se preverijo težave.
Na primer:
Če želimo preizkusiti polje, kjer bi morale biti sprejete vrednosti od 1 do 100, izberemo mejne vrednosti: 1-1, 1, 1 + 1, 100-1, 100 in 100 + 1. Namesto da uporabimo vse vrednosti od 1 do 100, uporabimo samo 0, 1, 2, 99, 100 in 101.
# 3) Preskušanje tabele odločitev
Kot že samo ime pove, povsod, kjer obstajajo logična razmerja, kot so:
Če
{
(Pogoj = True)
nato akcija1;
}
else action2; / * (stanje = napačno) * /
Nato bo tester za dva pogoja (True in False) določil dva izhoda (action1 in action2). Na podlagi verjetnih scenarijev je torej oblikovana tabela odločitev za pripravo nabora testnih primerov.
Na primer:
Vzemimo primer banke XYZ, ki za moške starejše občane določa 10-odstotno obrestno mero, za ostale prebivalce pa 9-odstotno.
V tem primeru pogoj ima C1 dve vrednosti kot true in false, pogoj C2 pa ima tudi dve vrednosti kot true in false. Število možnih kombinacij bi bilo potem štiri. Tako lahko s pomočjo tabele odločitev izpeljemo testne primere.
kateri od naslednjih ni v stanju preskušanja sistema?
# 4) Državno preskušanje prehoda
Preizkušanje stanja prehodov je tehnika, ki se uporablja za preizkušanje različnih stanj preskušanega sistema. Stanje sistema se spreminja glede na pogoje ali dogodke. Dogodki sprožijo stanja, ki postanejo scenariji, in preizkuševalec jih mora preizkusiti.
Diagram sistematičnega prehoda stanja daje jasen prikaz sprememb stanja, vendar je učinkovit za enostavnejše aplikacije. Zapletenejši projekti lahko privedejo do bolj zapletenih prehodnih diagramov, s čimer postanejo manj učinkoviti.
Na primer:
# 5) Ugibanje napak
To je klasičen primer preizkušanja na podlagi izkušenj.
Pri tej tehniki lahko preizkuševalec na podlagi izkušenj o vedenju in funkcionalnosti aplikacije ugane območja, ki so nagnjena k napakam. Številne napake je mogoče najti z ugibanjem napak, kjer večina razvijalcev običajno dela napake.
Nekaj pogostih napak, s katerimi razvijalci običajno pozabijo ravnati:
- Delite z ničlo.
- Obravnavanje ničelnih vrednosti v besedilnih poljih.
- Sprejem gumba za oddajo brez vrednosti.
- Nalaganje datoteke brez priloge.
- Nalaganje datotek z velikostjo, manjšo ali večjo od omejitve.
# 6) Grafične metode preskušanja
Vsaka aplikacija je kopičenje nekaterih predmetov. Vsi taki predmeti so identificirani in graf je pripravljen. Na tem grafu objektov se identificira vsak odnos objektov in v skladu s tem napišejo testni primeri, da se odkrijejo napake.
# 7) Primerjalno testiranje
Za preskušanje s to metodo se med seboj primerjajo različne neodvisne različice iste programske opreme.
Kako narediti korak za korakom?
Na splošno se pri sistematičnem postopku testiranja projekta / aplikacije ohrani kakovost in je dolgoročno koristna za nadaljnje kroge testiranja.
- Najpomembnejši korak je razumevanje specifikacije zahteve aplikacije. Vzpostavljen mora biti ustrezen dokumentiran SRS (Software Requirement Specification).
- Z uporabo zgoraj omenjenih tehnik testiranja črnega polja, kot so analiza mejnih vrednosti, enakovredna particija itd., Nabori veljavnih in neveljavnih vhodov se identificirajo z njihovimi želenimi rezultati in na podlagi tega se oblikujejo testni primeri.
- Zasnovani testni primeri se izvedejo, da preverijo, ali so uspešno ali neuspešno, tako da preverijo dejanske rezultate s pričakovanimi rezultati.
- Neuspešni testni primeri so postavljeni kot napake / napake in naslovljeni na razvojno skupino, da jo odpravi.
- Nadalje preskuševalec na podlagi odpravljenih napak ponovno preskusi napake, da preveri, ali se ponavljajo ali ne.
Prednosti in slabosti
Prednosti
- Preskuševalcu ni treba imeti tehničnega znanja. Pomembno je, da preizkusite tako, da ste na mestu uporabnika in razmišljate z njegovega vidika.
- Testiranje se lahko začne po zaključku razvoja projekta / aplikacije. Tako preizkuševalci kot razvijalci delujejo neodvisno, ne da bi se vmešavali v prostor drugega.
- Učinkovitejši je za velike in zapletene aplikacije.
- Napake in nedoslednosti je mogoče ugotoviti v zgodnji fazi testiranja.
Slabosti
- Brez kakršnega koli tehničnega ali programskega znanja obstaja verjetnost, da bomo prezrli možne pogoje scenarija, ki ga želimo preizkusiti.
- V določenem času obstajajo možnosti manjšega preskušanja in preskakovanje vseh možnih vhodnih podatkov ter njihovo izhodno testiranje.
- Popolna testna pokritost za velike in zapletene projekte ni mogoča.
Razlika med preskušanjem bele škatle in preskušanjem črne škatle
Spodaj je nekaj razlik med njima:
Testiranje črne škatle | Testiranje bele škatle |
---|---|
To je preskusna metoda, ne da bi poznali dejansko kodo ali notranjo strukturo aplikacije | Gre za preskusno metodo, ki pozna znanje o dejanski kodi in notranji strukturi aplikacije |
To je testiranje na višji ravni, kot je funkcionalno testiranje. | Ta vrsta testiranja se izvaja na nižji stopnji testiranja, kot so enotno testiranje, integracijsko testiranje |
Osredotoča se na funkcionalnost preizkušenega sistema | Osredotoča se na dejansko kodo - program in njegovo sintakso |
Za testiranje črne skrinjice je potrebna specifikacija zahteve | Za testiranje bele škatle so potrebni projektni dokumenti z diagrami pretoka podatkov, diagrami poteka itd. |
Testiranje črne skrinjice opravijo preizkuševalci | Testiranje bele škatle izvajajo razvijalci ali preizkuševalci s programskim znanjem. |
Zaključek
To je nekaj osnovnih točk glede testiranja črne skrinjice in pregleda njenih tehnik in metod.
Ker ni mogoče vsega s 100-odstotno natančnostjo preizkusiti s človeško vpletenostjo, bo učinkovita uporaba zgoraj omenjenih tehnik in metod zagotovo izboljšala kakovost sistema.
Za zaključek je to zelo koristna metoda za preverjanje funkcionalnosti sistema in prepoznavanje večine napak.
Upam, da bi dobili poglobljeno znanje o tehniki preizkušanja črnih skrinjic.
Priporočeno branje
- Ključne razlike med testiranjem črne škatle in testiranjem bele škatle
- Najboljša orodja za testiranje programske opreme 2021 [QA Test Automation Tools]
- Funkcionalno testiranje vs nefunkcionalno testiranje
- Vadnica za testiranje v parih ali za vse pare z orodji in primeri
- Testiranje bele škatle: popoln vodnik s tehnikami, primeri in orodji
- Vadnica za preskušanje glasnosti: primeri in orodja za preizkušanje glasnosti
- Vadnica za preizkušanje konfiguracije s primeri
- Preizkus eBook Prenos knjige