White-Box vs Black-Box-test
Begreberne White-Box og Black-Box bruges i softwareudvikling. Det er to af de testmetoder, der bruges i softwaretestning, processen med at give kunden sikkerhed for softwarens kvalitet. Softwaretest (som norm alt udføres ved at udføre softwaren) udføres med den hensigt at finde fejl (også kendt som softwarefejl) i softwaren.
Hvad er White-Box-test?
White-box-test bruges til at teste et softwaresystem baseret på systemets struktur. Det er mere som en gennemsigtig boks, hvorigennem vi kan se, hvad der foregår indeni. Det tester dybt på, hvordan hvert modul i systemet reagerer i henhold til de givne input. Sådan test tager meget tid, da det er nødvendigt at kontrollere kontrolstrukturer, sløjfer, betingelser, funktioner osv. Testteknikker i denne tilgang omfatter dataflowtest, kontrolflowtest, gren- og stitestning for hver enhed. For at udføre denne form for test er der brug for meget tekniske testere. Ved at udføre en white-box test er det nemmere at spore de fejl, der er tilgængelige i systemet. White-box test tilføjer en ekstra belastning til et projekt, fordi det i nogle situationer er nødvendigt at generere testcases som separate projekter for individuelle testområder. Derfor har dette endelig negative effekter på omkostningerne ved projektet og tidsplanen.
Hvad er Black-Box-test?
Black-box-test bruges kun til at teste systemets funktionalitet, uanset hvordan systemet udfører en handling. Det er primært målrettet at sikre, at systemkravene er opfyldt. Det ligner en lukket kasse, hvor vi kun ved, hvad vi fodrer, og endelig giver det et output, men ikke ved, hvordan det output blev produceret. Testteknikkerne omfatter; beslutningstabeltest, tilstandsovergangstabeller, tilsvarende opdeling osv. for test på højere niveau. Denne test tager kortere tid sammenlignet med white-box test, da denne kun overvejer at teste om systemet giver forventet output i henhold til det givne input. Testcases genereres kun i henhold til systemkravet. Testerens tekniske færdigheder forventes ikke højt. Hvis der opstår en fejl i systemet, er det ikke nemt at spore det, da det ikke tester den interne proces.
Typisk bruges begge disse teknikker i softwareudviklingsmiljøer for at sikre, at hele softwaren fungerer korrekt. Der er ingen specifik rækkefølge til at udføre disse to tests, og tilgangene tilhører ikke nogen specifik fase af softwareudviklings livscyklus. Black-box-testning kan dog udføres af et separat team, mens white-box-testning fortrinsvis udføres af udviklerne eller programmørerne selv, foruden et separat testteam.
Hvad er forskellen mellem White-Box-test og Black-Box-test??
• White-box-test udfører test på systemstrukturen
• Black-box-testtest for at bekræfte, at systemkravet er opfyldt i overensstemmelse hermed
• White-box-test kræver meget tekniske testere
• Teknisk viden om testeren forventes ikke i høj grad til black-box-testning
• Nem at spore intern fejl i white-box test
• Nem at udføre en test for at se, hvordan systemet vil fungere ved hjælp af black-box-test