Hvad er Gray Box Test? Teknikker, eksempel

Grå Box Test

Grå Box Test eller Grå box test er en softwaretestteknik til at teste et softwareprodukt eller en applikation med delvis viden om applikationens interne struktur. Formålet med grå box test er at søge og identificere defekter, der skyldes forkert kodestruktur eller forkert brug af applikationer.

I denne proces identificeres almindeligvis kontekstspecifikke fejl, der er relateret til websystemer. Det øger testdækningen ved at koncentrere sig om alle lagene i enhver complex system.

Gray Box Test er en softwaretestmetode, som er en kombination af begge Hvid Box Test og sort Box Testmetode.

  • I hvid Box test intern struktur (kode) er kendt
  • I sort Box test af intern struktur (kode) er ukendt
  • I grå Box Test af intern struktur (kode) er delvist kendt

Grå Box Test

I Software Engineering, Gray Box Test giver mulighed for at teste begge sider af en applikation, præsentationslag samt kodedelen. Det er primarinyttig i Integrationstest , Penetration Testing.

Eksempel på grå Box Test: Mens test af websteder har som links eller forældreløse links, hvis testeren støder på problemer med disse links, så kan han foretage ændringerne med det samme i HTML-kode og kan tjekke i realtid.

Hvorfor Gray Box Test

Gray Box Testning udføres for following grund,

  • Det giver kombinerede fordele ved både sort box test og hvid box tester begge
  • Det kombinerer input fra udviklere såvel som testere og forbedrer den overordnede produktkvalitet
  • Det reducerer omkostningerne ved en lang proces med at teste funktionelle og ikke-funktionelle typer
  • Det giver nok fritid for en udvikler til at rette fejl
  • Test udføres fra brugerens synspunkt snarere end et designersynspunkt

Gray Box Teststrategi

At udføre Gray box test, er det ikke nødvendigt, at testeren har adgang til kildekoden. En test er designet baseret på viden om algoritme, architectures, interne tilstande eller andre beskrivelser på højt niveau af programmets adfærd.

At udføre Gray box Test-

  • Det anvender en ligetil teknik med sort box test
  • Det er baseret på krav-testcasegenerering, som sådan forudindstiller det alle betingelserne, før programmet testes ved påstandsmetode.
Teknikker brugt til grå box Test er-
  • Matrix test: Denne testteknik involverer at definere alle de variabler, der findes i deres programmer.
  • Regressionstest: For at kontrollere, om ændringen i den tidligere version har regresseret andre aspekter af programmet i den nye version. Det vil blive gjort ved at teste strategier som gentest alle, gentest risikable brugstilfælde, gentest inden for en firewall.
  • Ortogonal Array Test eller OAT: Det giver maksimal kodedækning med et minimum af testtilfælde.
  • Mønstertest: Denne test udføres på de historiske data fra de tidligere systemdefekter. I modsætning til sort box test, grå box test graver i koden og afgør, hvorfor fejlen skete

Normalt, Gray box metode bruger automatiserede softwaretestværktøjer at gennemføre testen. Stubber og moduldrivere er oprettet for at aflaste testeren for manuelt at generere koden.

Trin til at udføre Gray box Test er:
  • Trin 1: Identificer input
  • Trin 2: Identificer udgangene
  • Trin 3: Identificer de vigtigste veje
  • Trin 4: Identificer underfunktioner
  • Trin 5: Udvikle input til underfunktioner
  • Trin 6: Udvikle output til underfunktioner
  • Trin 7: Udfør testcase for underfunktioner
  • Trin 8: Bekræft det korrekte resultat for underfunktioner
  • Trin 9: Gentag trin 4 og 8 for andre underfunktioner
  • Trin 10: Gentag trin 7 og 8 for andre underfunktioner

Testcaserne for grå box test kan omfatte GUI-relateret, Sikkerhedsrelateret, Databaserelateret, Browserrelateret, Operasystemrelateret mv.

Gray Box Test udfordringer

  • Når en komponent under test støder på en fejl af en eller anden art, kan det føre til abort af den igangværende operation
  • Når testen udføres fuldt ud, men indholdet af resultatet er forkert.

Sammendrag:

  • De samlede omkostninger ved systemfejl kan reduceres og forhindres i at gå videre med Gray box test
  • Grå box test er mere velegnet til GUI, Funktionstest, sikkerhedsvurdering, webapplikationer, webtjenester mv.
  • Teknikker brugt til grå box Test