Hvid Box Test – Hvad er, teknikker, eksempler og typer

Hvid Box Test

Hvid Box Test er en testteknik, hvor softwarens interne struktur, design og kodning testes for at verificere input-output flow og forbedre design, brugervenlighed og sikkerhed. I hvidt box test, kode er synlig for testere, så det kaldes også Clear box test, åben box test, gennemsigtig box test, kodebaseret test og glas box testning.

Det er en af ​​to dele af Box Testmetode til softwaretest. Dens modstykke, Blackbox test, involverer test fra et eksternt eller slutbrugerperspektiv. På den anden side White box test i software engineering er baseret på de indre funktioner i en applikation og kredser om intern test.

Udtrykket "HvidBox” blev brugt på grund af gennemsigtigheden box koncept. Det klare box eller hvidBox navnet symboliserer evnen til at se gennem softwarens ydre skal (eller "box”) ind i dets indre virke. Synes godt omwise, Det sorte box"I"Sort Box Test” symboliserer ikke at kunne se softwarens indre funktion, så kun slutbrugeroplevelsen kan testes.

Hvid Box Test af video

Klik link. hvis videoen ikke er tilgængelig

Hvad verificerer du i hvidt Box Test?

Hvid box test involverer test af softwarekoden til following:

  • Interne sikkerhedshuller
  • Brudte eller dårligt strukturerede stier i kodningsprocesserne
  • Strømmen af ​​specifikke input gennem koden
  • Forventet output
  • Funktionaliteten af ​​betingede sløjfer
  • Test af hvert udsagn, objekt og funktion på individuel basis

Testen kan udføres på system-, integrations- og enhedsniveauer for softwareudvikling. Et af de grundlæggende mål for hvidbox test er at verificere et arbejdsflow for en applikation. Det involverer at teste en række foruddefinerede input mod forventede eller ønskede output, så når et specifikt input ikke resulterer i det forventede output, er du stødt på en fejl.

Hvordan udfører du White Box Test?

Vi har opdelt det i to grundlæggende trin for at give dig en forenklet forklaring på hvid box afprøvning. Dette er, hvad testere gør, når de tester en applikation ved hjælp af den hvide box testteknik:

TRIN 1) FORSTÅ KILDEKODEN

Det første, en tester ofte vil gøre, er at lære og forstå kildekoden til applikationen. Siden hvid box test involverer test af en applikations indre funktion, testeren skal være meget vidende om de programmeringssprog, der bruges i de applikationer, de tester. Testpersonen skal også være meget opmærksom på sikker kodningspraksis. Sikkerhed er ofte et af de primære mål med test af software. Testeren skal være i stand til at finde sikkerhedsproblemer og forhindre angreb fra hackere og naive brugere, der kan injicere ondsindet kode i applikationen enten ved.wingly eller ukendtwingly.

TRIN 2) OPRET TESTCASES OG UDFØR

Det andet grundlæggende trin til hvid box test involverer test af applikationens kildekode for korrekt flow og struktur. En måde er ved at skrive mere kode for at teste applikationens kildekode. Testeren vil udvikle små test for hver proces eller serie af processer i applikationen. Denne metode kræver, at testeren skal have indgående kendskab til koden og udføres ofte af udvikleren. Andre metoder omfatter Manuel testning, prøve- og fejltestning og brugen af ​​testværktøjer, som vi vil forklare videre i denne artikel.

HvidBox Test

HvidBox Test eksempel

Overvej folloenwing stykke kode

Printme (int a, int b) {                       ------------  Printme is a function 
    int result = a+ b; 
    If (result> 0)
    	Print ("Positive", result)
    Else
    	Print ("Negative", result)
    }                                        -----------   End of the source code

Whites målBox test i software engineering er at verificere alle beslutningsgrene, sløjfer og udsagn i koden.

At udøve udsagnene i ovenstående hvide box test eksempel, hvidBox testcases ville være

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

Hvid Box Testteknikker

En stor hvid box testteknik er kodedækningsanalyse. Kodedækningsanalyse eliminerer huller i en Test sag suite. Den identificerer områder af et program, der ikke udøves af et sæt testcases. Når huller er identificeret, opretter du testcases for at verificere utestede dele af koden og derved øge kvaliteten af ​​softwareproduktet

Der er automatiserede værktøjer tilgængelige til at udføre Kodedækningsanalyse. Nedenfor er et par dækningsanalyseteknikker a box testeren kan bruge:

Erklæringsdækning:- Denne teknik kræver, at alle mulige udsagn i koden testes mindst én gang under testprocessen af software Engineering.

Filialdækning – Denne teknik kontrollerer enhver mulig sti (if-else og andre betingede sløjfer) i en softwareapplikation.

Bortset fra ovenstående er der talrige dækningstyper såsom tilstandsdækning, multipel tilstandsdækning, stidækning, funktionsdækning osv. Hver teknik har sine egne fordele og forsøg på at teste (dække) alle dele af softwarekoden. Ved at bruge Statement og Branch-dækning opnår du generelt 80-90% kodedækning, hvilket er tilstrækkeligt.

Following er vigtige hvideBox Testteknikker:

  • Erklæringsdækning
  • Beslutningsdækning
  • Filialdækning
  • Tilstandsdækning
  • Dækning af flere tilstande
  • Finite State Machine Dækning
  • Stidækning
  • Kontrol flow test
  • Test af dataflow

Typer af hvid Box Test

Hvid box test omfatter flere testtyper, der bruges til at evaluere anvendeligheden af ​​en applikation, kodeblok eller specifik softwarepakke. Der er listet nedenfor -

  • Enhedstest: Det er ofte den første type test, der udføres på en applikation. Enhedstest udføres på hver enhed eller kodeblok, efterhånden som den udvikles. Enhedstest udføres i det væsentlige af programmøren. Som softwareudvikler udvikler du nogle få linjer kode, en enkelt funktion eller et objekt og tester det for at sikre, at det virker, før du fortsætter. Enhedstest hjælper med at identificere et flertal af fejl tidligt i softwareudviklingens livscyklus. Bugs identificeret i denne fase er billigere og nemme at rette.
  • Test for hukommelseslækager: Hukommelseslækager er førende årsager til langsommere kørende programmer. En QA-specialist, der har erfaring med at opdage hukommelseslækager, er afgørende i tilfælde, hvor du har en langsom kørende softwareapplikation.

Udover ovenstående er nogle få testtyper en del af både sort box og hvid box afprøvning. De er anført nedenfor

  • Hvid Box Penetration Testing: I denne test har testeren/udvikleren fuld information om applikationens kildekode, detaljerede netværksoplysninger, involverede IP-adresser og alle serveroplysninger, applikationen kører på. Målet er at angribe koden fra flere vinkler for at afsløre sikkerhedstrusler.
  • Hvid Box Mutationstest: Mutationstest bruges ofte til at opdage de bedste kodningsteknikker, der skal bruges til at udvide en softwareløsning.

Hvid Box Testværktøjer

Nedenfor er en liste over top hvide box testværktøjer.

Fordele ved hvid Box Test

  • Kodeoptimering ved at finde skjulte fejl.
  • Hvid box testcases kan nemt automatiseres.
  • Testning er mere grundig, da alle kodestier normalt er dækket.
  • Testen kan starte tidligt SDLC selvom GUI ikke er tilgængelig.

Ulemper ved hvidBox Test

  • Hvid box test kan være ganske complex og dyrt.
  • Udviklere, der normalt udfører hvid box testcases afskyr det. Den hvide box test af udviklere er ikke detaljeret og kan føre til produktionsfejl.
  • Hvid box test kræver professionelle ressourcer med en detaljeret forståelse af programmering og implementering.
  • Hvid-box test er tidskrævende, større programmeringsapplikationer tager tid at teste fuldt ud.

Konklusion

  • Hvid box test kan være ganske complex. Den complexden involverede enhed har meget at gøre med den applikation, der testes. En lille applikation, der udfører en enkelt simpel operationen kunne være hvid box testet på få minutter, mens større programmeringsapplikationer tager dage, uger og endnu længere tid at teste fuldt ud.
  • Hvid box test i softwaretest bør udføres på en softwareapplikation, da den udvikles efter den er skrevet og igen efter hver ændring.