Ohjelmiston testaaminen
Testaustavat > Laatikkomalli > White box -testaus

White box -testaamista sanotaan testaamiseksi, jossa testaajalla on pääsy tietorakenteisiin ja algoritmeihin sekä koko koodiin. White box -testaamisesta käytetään suomenkielisessä kirjallisuudessa termiä lasilaatikkotestaus. Lasilaatikkotestauksessa käytetään ohjelmiston sisäistä näkökulmaa, eli toisinkuin mustalaatikkotestauksessa, testaaja tarvitsee ohjelmointitaitoja testitapausten suunnittelua varten. Testaaja valitsee syötteet sen perusteella, mitkä niistä käyvät läpi koodin kaikki mahdolliset polut ja määrittelee sitten odotetut tulokset. Vaikka lasilaatikkotestausta voidaan soveltaa yksikkö-, integraatio- ja järjestelmätesteissä, sitä tehdään yleensä vain yksikkötasolla, sillä koodimäärän laajetessa, testaajan käy vaikeammaksi hahmottaa kokonaisuutta. Sillä voi testata polkuja yksikössä, yksiköiden välillä integraation aikana sekä alijärjestelmien välillä järjestelmätason testauksessa. Lasilaatikkotestauksella voidaan paljastaa monia virheitä, mutta sillä ei välttämättä havaita määrittelyssä toteuttamatta jääneitä osia tai puuttuvia vaatimuksia.
Tasot
Yksikkötestaus. White-box-testaus tehdään yksikkötestauksen aikana sen varmistamiseksi, että koodi toimii tarkoitetulla tavalla, ennen kuin se integroidaan aiemmin testatun koodin kanssa. Yksikkötestauksen aikana suoritettavalla white-box-testausmenetelmällä voidaan mahdollisesti havaita monia virheitä jo varhaisessa vaiheessa, ja se auttaa korjaamaan virheitä, jotka ilmenevät myöhemmin sen jälkeen, kun koodi on integroitu muuhun sovellukseen, ja vähentää siten virheiden vaikutuksia myöhemmin kehitystyön aikana.
Integraatiotestaus. Tämän tason white-box-testauksessa testataan rajapintojen vuorovaikutusta keskenään. Yksikkötason testauksessa varmistettiin, että jokainen koodi testattiin ja ne toimivat asianmukaisesti eristetyssä ympäristössä, ja integroinnissa tarkastellaan käyttäytymisen oikeellisuutta avoimessa ympäristössä käyttämällä white-box-testausta ohjelmoijan tiedossa olevien rajapintojen vuorovaikutusten osalta.
Regressiotestaus. Regressiotestauksessa käytetään kierrätettyjä white-box-testitapauksia yksikkö- ja integrointitestauksen tasoilla.
Perusmenettelyt
White-box-testauksen perusmenettelyt edellyttävät, että testaaja tuntee perusteellisesti testattavan lähdekoodin. Ohjelmoijalla on oltava syvällinen ymmärrys sovelluksesta, jotta hän tietää, millaisia testitapauksia on luotava, jotta jokainen näkyvä polku käytetään testauksessa. Kun lähdekoodi on ymmärretty, sitä voidaan analysoida testitapausten luomiseksi. Seuraavassa esitetään kolme perusvaihetta, jotka white-box-testauksessa otetaan testitapausten luomiseksi:
Sisäänsyöttö käsittää erityyppiset vaatimukset, toiminnalliset määrittelyt, asiakirjojen yksityiskohtaisen suunnittelun, asianmukaisen lähdekoodin ja tietoturvamäärittelyt. Tämä on white-box-testauksen valmisteluvaihe, jossa asetetaan kaikki perustiedot.
Käsittelyyn kuuluu riskianalyysin suorittaminen koko testausprosessin ohjaamiseksi, asianmukainen testaussuunnitelma, testitapausten suorittaminen ja tulosten ilmoittaminen. Tämä on vaihe, jossa rakennetaan testitapauksia, jotta varmistetaan, että ne testaavat sovelluksen perusteellisesti ja annetut tulokset kirjataan vastaavasti.
Tuotos käsittää loppuraportin laatimisen, johon sisältyvät kaikki edellä mainitut valmistelut ja tulokset.