black box testing an depth tutorial with examples
I denne tutorial, ved hjælp af min industrielle erfaring inden for softwaretest, lad os gøre os bekendt med typerne og teknikkerne til Black-Box Testing sammen med dens proces, fordele, ulemper og nogle automatiseringsværktøjer til at teste det andet end manuel test.
Vi lærer også om forskellene mellem test af hvid boks og test af sort boks.
Liste over 'Black Box Test Techniques' -vejledninger:
Tutorial # 1: Hvad er Black Box Testing
Tutorial # 2: Hvad er White Box Testing
Tutorial # 3: Funktionel test forenklet
Tutorial # 4: Hvad er brugssagstest
Tutorial # 5 : Ortogonal Array Testing Technique
Teknikker
Tutorial # 6: Grænseværdianalyse og ækvivalenspartitionering
Tutorial # 7: Test af beslutningstabel
Tutorial # 8: Test af statsovergang
Vejledning nr. 9 : Fejl gætte
Tutorial # 10: Grafbaserede testmetoder
Næsten alle os udfører Black Box-test hver dag!
Uanset om vi har lært eller ej, har vi alle udført Black Box Testing mange gange i vores daglige liv !!
Fra selve navnet kan du sandsynligvis forstå, at det implicerer at interagere med systemet, at du tester som et mysterium. Det betyder, at du ikke er vidende nok om systemets interne funktion, men du ved, hvordan det skal opføre sig.
Hvis vi tager en eksempel for at teste vores bil eller cykel kører vi altid den for at sikre, at den ikke opfører sig på en usædvanlig måde. Se? Vi har allerede udført Black Box Testing.
Hvad du vil lære:
- Hvad er Black Box Testing?
- Typer af Black Box Testing
- Black Box-testværktøjer
- Black Box testteknikker
- Hvordan gør man trinvis?
- Fordele og ulemper
- Forskellen mellem test af hvid boks og test af sort boks
- Konklusion
- Anbefalet læsning
Hvad er Black Box Testing?
Black Box Testing er også kendt som adfærdsmæssig, uigennemsigtig boks, lukket boks, specifikationsbaseret eller øjen-til-øje-test.
Det er en softwaretestmetode, der analyserer funktionaliteten i en software / applikation uden at vide meget om den interne struktur / design af det emne, der testes, og sammenligner inputværdien med outputværdien.
hvilket af følgende er et eksempel på data mining
Hovedfokus i Black Box Testing er på systemets funktionalitet som helhed. Begrebet 'Adfærdstest' bruges også til Black Box Testing. Adfærdsmæssigt testdesign er lidt anderledes end black-box testdesignet, fordi brugen af intern viden ikke er strengt forbudt, men det er stadig afskrækket.
Hver testmetode har sine egne fordele og ulemper. Der er nogle fejl, der ikke kan findes ved hjælp af den eneste sorte kasse eller kun hvide kasse-teknik.
Størstedelen af applikationerne testes efter Black Box-metoden. Vi er nødt til at dække de fleste testtilfælde, så de fleste af fejlene bliver opdaget af en Sort kasse metode.
Denne test finder sted i hele softwareudviklingen og testets livscyklus, dvs. i trin for enhed, integration, system, accept og regressionstest.
Dette kan være både funktionelt eller ikke-funktionelt.
Typer af Black Box Testing
Praktisk er der flere typer Black Box-test, der er mulige, men hvis vi overvejer den største variant af det, er nedenstående de to grundlæggende.
# 1) Funktionstest
Denne type omhandler de funktionelle krav eller specifikationer for en applikation. Her testes forskellige handlinger eller funktioner i systemet ved at levere input og sammenligne det faktiske output med det forventede output.
For eksempel ,når vi tester en dropdown-liste, klikker vi på den og verificerer, at den udvides, og at alle de forventede værdier vises på listen.
Få hovedtyper af funktionstest er:
- Røgtest
- Sanity Testing
- Integrationstest
- Systemtest
- Regressionstest
- Test af brugeraccept
=> Læs mere om Funktionel testning .
# 2) Ikke-funktionel test
Bortset fra funktionernes krav er der også flere ikke-funktionelle aspekter, der skal testes for at forbedre applikationens kvalitet og ydeevne.
Få hovedtyper af ikke-funktionel test inkluderer:
- Usability Testing
- Load Testing
- Test af ydeevne
- Kompatibilitetstest
- Stresstest
- Test af skalerbarhed
=> Læs mere om Ikke-funktionel test .
Black Box-testværktøjer
Black Box-testværktøjer er hovedsageligt optagelses- og afspilningsværktøjer. Disse værktøjer bruges til regressionstest for at kontrollere, om ny build har skabt nogen fejl i tidligere fungerende applikationsfunktionalitet.
separat kæde hash tabel c ++
Disse optage- og afspilningsværktøjer optager testcases i form af nogle scripts som TSL, VB-script, Javascript, Perl osv.
Black Box testteknikker
For systematisk at teste et sæt funktioner er det nødvendigt at designe testcases. Testere kan oprette testcases fra kravspecifikationsdokumentet ved hjælp af følgende Black Box Testing-teknikker.
- Ækvivalenspartitionering
- Grænseværdi-analyse
- Test af beslutningstabel
- Test af statsovergang
- Fejl gætte
- Grafbaserede testmetoder
- Sammenligningstest
Lad os forstå hver teknik i detaljer.
# 1) Ækvivalenspartitionering
Denne teknik er også kendt som ECP (Equivalence Class Partitioning). I denne teknik opdeles inputværdier til systemet eller applikationen i forskellige klasser eller grupper baseret på dens lighed i resultatet.
Derfor, i stedet for at bruge hver inputværdi, kan vi nu bruge en værdi fra gruppen / klassen til at teste resultatet. På denne måde kan vi opretholde testdækningen, mens vi kan reducere en masse omarbejdning og vigtigst af alt brugt tid.
For eksempel:
Som til stede i ovenstående billede accepterer et 'ALDER' tekstfelt kun tallene fra 18 til 60. Der vil være tre sæt klasser eller grupper.
To ugyldige klasser vil være:
a) Mindre end eller lig med 17.
b) Større end eller lig med 61.
En gyldig klasse vil være alt mellem 18 og 60.
Vi har således reduceret testcases til kun 3 testcases baseret på de dannede klasser og derved dækket alle mulighederne. Så test med en hvilken som helst værdi fra hvert sæt i klassen er tilstrækkelig til at teste ovenstående scenarie.
=> Anbefalet læsning - Hvad er ækvivalenspartitionering?
# 2) Grænseværdianalyse
Fra selve navnet kan vi forstå, at vi i denne teknik fokuserer på værdierne ved grænser, da det konstateres, at mange applikationer har en stor mængde problemer med grænserne.
Grænse betyder værdierne nær grænsen, hvor systemets opførsel ændres. I grænseværdianalyse testes både de gyldige input og ugyldige input for at verificere problemerne.
For eksempel:
Hvis vi vil teste et felt, hvor værdier fra 1 til 100 skal accepteres, vælger vi grænseværdierne: 1-1, 1, 1 + 1, 100-1, 100 og 100 + 1. I stedet for at bruge alle værdierne fra 1 til 100 bruger vi bare 0, 1, 2, 99, 100 og 101.
# 3) Test af beslutningstabel
Som navnet selv antyder, uanset hvor der er logiske forhold som:
Hvis
{
(Betingelse = Sand)
derefter handling1;
}
ellers handling2; / * (betingelse = falsk) * /
Derefter identificerer en tester to output (handling1 og handling2) for to betingelser (sand og falsk). Så ud fra de sandsynlige scenarier er der skåret en beslutningstabel for at udarbejde et sæt testsager.
For eksempel:
Tag et eksempel på XYZ-bank, der giver renter til den mandlige seniorborger som 10% og for resten af befolkningen 9%.
I dette eksempel betingelse har C1 to værdier som sandt og falsk, betingelse C2 har også to værdier som sandt og falsk. Antallet af samlede mulige kombinationer vil derefter være fire. På denne måde kan vi udlede testsager ved hjælp af en beslutningstabel.
hvordan man bruger en .jar-fil
# 4) Test af tilstandstransition
State Transition Testing er en teknik, der bruges til at teste de forskellige tilstande i det testede system. Systemets tilstand ændres afhængigt af forholdene eller begivenhederne. Begivenhederne udløser tilstande, som bliver scenarier, og en tester skal teste dem.
Et systematisk tilstandsovergangsdiagram giver et klart overblik over tilstandsændringerne, men det er effektivt til enklere applikationer. Mere komplekse projekter kan føre til mere komplekse overgangsdiagrammer og dermed gøre det mindre effektivt.
For eksempel:
# 5) Fejl gætte
Dette er et klassisk eksempel på erfaringsbaseret test.
I denne teknik kan testeren bruge sin erfaring med applikationsadfærd og funktionalitet til at gætte de fejlbehæftede områder. Mange mangler kan findes ved hjælp af gættet fejl, hvor de fleste af udviklerne normalt laver fejl.
Få almindelige fejl, som udviklere normalt glemmer at håndtere:
- Opdel med nul.
- Håndtering af nulværdier i tekstfelter.
- Accept af knappen Send uden værdi.
- Upload af fil uden vedhæftet fil.
- Filupload med mindre end eller mere end grænsestørrelsen.
# 6) Grafbaserede testmetoder
Hver eneste applikation er en opbygning af nogle objekter. Alle sådanne objekter identificeres, og grafen udarbejdes. Fra denne objektgraf identificeres hvert objektforhold, og testcases skrives i overensstemmelse hermed for at opdage fejlene.
# 7) Sammenligningstest
Forskellige uafhængige versioner af den samme software bruges til at sammenligne med hinanden til test i denne metode.
Hvordan gør man trinvis?
Generelt når en systematisk proces følges for at teste et projekt / en applikation, opretholdes kvaliteten og er nyttig i det lange løb til yderligere testrunder.
- Det vigtigste skridt er at forstå kravspecifikationen for en applikation. En korrekt dokumenteret SRS (Software Requirement Specification) skal være på plads.
- Ved hjælp af de ovennævnte Black Box Testing-teknikker såsom Boundary Value Analysis, ækvivalenspartitionering osv. Sæt gyldige og ugyldige input identificeres med deres ønskede output, og testcases er designet ud fra det.
- De designede testsager udføres for at kontrollere, om de er bestået eller mislykkes ved at verificere de faktiske resultater med de forventede resultater.
- De mislykkede testsager hæves som defekter / fejl og adresseres til udviklingsteamet for at få det løst.
- Yderligere baseret på de mangler, der er rettet, tester testeren fejlene igen for at kontrollere, om de er tilbagevendende eller ej.
Fordele og ulemper
Fordele
- Testeren behøver ikke have en teknisk baggrund. Det er vigtigt at teste ved at være i brugerens sko og tænke fra brugerens synspunkt.
- Test kan startes, når udviklingen af projektet / applikationen er udført. Både testere og udviklere arbejder uafhængigt uden at blande sig i hinandens rum.
- Det er mere effektivt til store og komplekse applikationer.
- Mangler og uoverensstemmelser kan identificeres i den tidlige fase af testen.
Ulemper
- Uden nogen teknisk eller programmeringsmæssig viden er der chancer for at ignorere mulige forhold i det scenarie, der skal testes.
- På en fastsat tid er der muligheder for at teste mindre og springe over alle mulige input og deres outputtest.
- En komplet testdækning er ikke mulig for store og komplekse projekter.
Forskellen mellem test af hvid boks og test af sort boks
Nedenfor er der et par forskelle mellem dem begge:
Black Box Testing | Test af hvid boks |
---|---|
Det er en testmetode uden at have viden om applikationens faktiske kode eller interne struktur | Det er en testmetode, der har viden om applikationens faktiske kode og interne struktur |
Dette er et højere niveau test, såsom funktionel test. | Denne type test udføres på et lavere niveau af test såsom enhedstest, integrationstest |
Det koncentrerer sig om funktionaliteten i det testede system | Det koncentrerer sig om det aktuelle kode - program og dets syntaks |
Test af sort boks kræver kravspecifikation for at teste | White Box-test kræver designdokumenter med dataflowdiagrammer, flowcharts osv. |
Test af sort boks udføres af testerne | White box-test udføres af udviklere eller testere med programmeringsviden. |
Konklusion
Dette er nogle af de grundlæggende punkter vedrørende Black Box-test og oversigten over dens teknikker og metoder.
Da det ikke er muligt at teste alt med menneskelig involvering med 100 procent nøjagtighed, hvis de ovennævnte teknikker og metoder anvendes effektivt, vil det helt sikkert forbedre systemets kvalitet.
Afslutningsvis er dette en meget nyttig metode til at verificere systemets funktionalitet og identificere de fleste af manglerne.
Håber du ville have fået et indgående kendskab til Black Box Testing teknik.
Anbefalet læsning
- Nøgleforskelle mellem Black Box Testing og White Box Testing
- Bedste softwaretestværktøjer 2021 [QA Test Automation Tools]
- Funktionel testning mod ikke-funktionel testning
- Parvis test eller vejledning til test af alle par med værktøjer og eksempler
- White Box Testing: En komplet guide med teknikker, eksempler og værktøjer
- Volume Testing Tutorial: Eksempler og Volume Testing Tools
- Konfigurationstestvejledning med eksempler
- Test af Primer eBook Download