Harmaa laatikko
Mikä on harmaa laatikko?
Harmaa laatikko viittaa ohjelmiston testaukseen, jossa sen sisäisestä toiminnasta tiedetään vähän. Harmaan laatikon testaus on eettinen hakkerointitekniikka, jossa hakkerin on käytettävä rajoitettuja tietoja tunnistaakseen kohteen suojausverkon vahvuudet ja heikkoudet.
Harmaiden laatikoiden ymmärtäminen
Gray box on hybridi white box -testauksesta, jossa testaaja tutkii ohjelmiston koodin sisäistä logiikkaa ja rakennetta, ja black box -testauksesta, jossa testaaja ei tiedä ohjelmiston koodista mitään. Harmaan laatikon testauksen ymmärtämiseksi meidän on ensin ymmärrettävä mustan laatikon testaus ja valkoisen laatikon testaus.
Mustan laatikon ja valkoisen laatikon testaus
Mustan laatikon testaus tarkastelee vain käyttäjän syötteitä ja sitä, mitä ohjelmisto tuottaa näiden syötteiden perusteella. Black box -testaus ei vaadi ohjelmointikielen taitoa tai muita teknisiä yksityiskohtia. Se on eräänlainen korkean tason testaus, jota käytetään järjestelmätestauksessa ja hyväksymistestauksessa. Ohjelmistoinsinöörit tarvitsevat ohjelmistovaatimusmäärittelyn (SRS) -asiakirjan mustan laatikon testauksen suorittamiseksi. Tämä testaus ottaa loppukäyttäjän näkökulman, jossa mustan laatikon testaaja ei tiedä, kuinka tulot tuotetaan tuloista.
White box -testaus edellyttää syvällistä tietoa ohjelmistojen rakentamiseen käytetyistä tekniikoista ja alustoista, mukaan lukien asiaankuuluva ohjelmointikieli. Se on eräänlainen matalan tason testaus, jota käytetään yksikkötestauksessa ja indikaatiotestauksessa. Ohjelmistoinsinöörien on ymmärrettävä sovelluksen luomiseen käytetty ohjelmointikieli, jotta he voivat ymmärtää sen lähdekoodia. White box -testauksen ensisijaisena tarkoituksena on vahvistaa turvallisuutta, tutkia, kuinka tulot ja lähdöt kulkevat sovelluksen läpi, sekä parantaa suunnittelua ja käytettävyyttä. Kun valkoisen laatikon testaaja ei saa odotettua tulosta annetusta syötteestä, tuloksen katsotaan olevan virhe, joka on korjattava.
Kuinka Grey Box -testaus toimii
Harmaa laatikko -testaus sisältää tärkeitä sekä musta- että valkoisen laatikon testauksen osia paremman tuloksen saamiseksi kuin kumpikaan voisi saavuttaa yksinään. Sekä loppukäyttäjät että kehittäjät suorittavat harmaalaatikkotestausta rajallisella (osittaisella) tiedolla sovelluksen lähdekoodista. Harmaan laatikon testaus voi olla manuaalinen tai automaattinen. Se on kattavampi ja aikaa vievämpi kuin mustan laatikon testaus, mutta ei niin kattava tai aikaa vievä kuin valkoisen laatikon testaus. Harmaan laatikon testaajat vaativat yksityiskohtaisia suunnitteluasiakirjoja.
Harmaan laatikon testaukseen sisältyy tulojen, lähtöjen, pääpolkujen ja alitoimintojen tunnistaminen. Sitten se siirtyy kehittämään syötteitä ja lähtöjä alifunktioille, suorittamaan testitapauksia alifunktioille ja tarkistamaan nämä tulokset.
Esimerkki harmaasta laatikosta
Harmaan laatikon testaaja saattaa tarkistaa ja korjata verkkosivuston linkit. Jos linkki ei toimi, testaaja muuttaa HTML-koodia yrittääkseen saada linkin toimimaan ja tarkistaa sitten käyttöliittymästä uudelleen, toimiiko linkki. Harmaa laatikkotesteri voi myös testata online-laskinta. Testauslaite määrittelee syötteet – matemaattiset kaavat, kuten 1+1, 2*2, 5-4 ja 15/3 – ja tarkista sitten, että laskin antaa oikeat lähdöt näillä syötteillä. Harmaan laatikon testerillä on pääsy laskimen HTML-koodiin ja se voi muuttaa sitä, jos havaitaan virheitä.
Gray box -testaus tarkastelee sekä sovelluksen käyttöliittymää eli esitystasoa että sen sisäisiä toimintoja eli koodia. Sitä käytetään pääasiassa integraatiotestauksessa ja penetraatiotestauksessa, mutta se ei sovellu algoritmien testaukseen. Harmaa laatikkotestausta käytetään yleensä sovelluksen käyttöliittymän, suojauksen tai online-toiminnallisuuden testaamiseen matriisitestauksen, regressiotestauksen,. ortogonaalisen taulukon testauksen ja kuviotestauksen kaltaisilla tekniikoilla . Harmaan laatikon testaajat tunnistavat todennäköisimmin kontekstikohtaiset ongelmat.
"Harmaa" viittaa testaajan osittaiseen kykyyn nähdä sovelluksen sisäinen toiminta. "Valkoinen" tarkoittaa kykyä nähdä ohjelmiston käyttöliittymän läpi sen sisäiseen toimintaan, ja "musta" tarkoittaa kyvyttömyyttä nähdä ohjelmiston sisäisiä toimintoja. Harmaan laatikon testausta kutsutaan joskus läpikuultavaksi testaukseksi, kun taas valkoisen laatikon testausta kutsutaan joskus selkeäksi testaukseksi ja mustan laatikon testausta voidaan myös kutsua läpinäkymättömäksi testaukseksi.
Kohokohdat
Harmaan laatikon testaus on pohjimmiltaan sekoitus valkoisen laatikon (täydellinen tieto) ja musta laatikko (ei tietoa) menetelmiä.
Gray box -testaus on tekniikka ohjelmistovirheiden tai hyväksikäyttöjen löytämiseen, jossa taustalla olevasta ohjelmistosta tiedetään etukäteen jonkin verran rajoitettua tietoa.
Tämä "eettisen hakkeroinnin" muoto antaa ohjelmistokehittäjille mahdollisuuden luoda korjauksia ja korjauksia estääkseen haitallisia hyökkääjiä hyödyntämästä näitä hyväksikäyttöjä.