Black box -testaus eli käyttäytymistesti on strategia (menetelmä), jolla testataan objektin (ohjelman, järjestelmän) toiminnallista käyttäytymistä ulkomaailman näkökulmasta, jossa ei käytetä tietoa kohteen sisäisestä rakenteesta (koodista). testataan. Toisin sanoen black box -testauksen tekevät testaajat, joilla ei ole pääsyä sovelluksen lähdekoodiin. Strategia tarkoittaa systemaattisia menetelmiä valita ja luoda testejä testisarjalle. Käyttäytymistestistrategia tulee teknisistä vaatimuksista ja niiden määrittelyistä [1] .
"Musta laatikko" ymmärretään tutkimuskohteena, jonka sisäistä rakennetta ei tunneta. "Mustan laatikon" käsitteen ehdotti W. R. Ashby . Kybernetiikassa sen avulla voidaan tutkia järjestelmien käyttäytymistä, eli niiden reaktioita erilaisiin ulkoisiin vaikutuksiin, ja samalla irrottaa niiden sisäisestä rakenteesta.
Vain syötteillä ja lähdöillä manipuloimalla voidaan suorittaa tiettyjä tutkimuksia. Käytännössä herää aina kysymys, missä määrin "mustan" laatikon homomorfismi heijastaa sen tutkitun mallin riittävyyttä, eli kuinka täydellisesti alkuperäisen perusominaisuudet heijastuvat mallissa.
Minkä tahansa ohjausjärjestelmän kuvaukselle ajassa on tunnusomaista kuva sen tilojen järjestyksestä sen edetessä kohti sitä edessä olevaa tavoitetta. Muutos ohjausjärjestelmässä voi olla joko yksi yhteen ja sitten sitä kutsutaan isomorfiseksi tai vain yksi yhteen, yhteen suuntaan. Tässä tapauksessa muutosta kutsutaan homomorfiseksi.
"Musta" laatikko on monimutkainen homomorfinen malli kyberneettisestä järjestelmästä, jossa monimuotoisuutta kunnioitetaan. Se on vain silloin tyydyttävä malli järjestelmästä, kun se sisältää sellaisen määrän tietoa, joka heijastaa järjestelmän monimuotoisuutta. Voidaan olettaa, että mitä enemmän järjestelmämallin tuloihin vaikuttavia häiriöitä on, sitä suurempi diversiteetti ohjaimella tulisi olla.
Tällä hetkellä tunnetaan kahdenlaisia "mustia" laatikoita. Ensimmäinen tyyppi sisältää minkä tahansa "mustan" laatikon, jota voidaan pitää automaattina , jota kutsutaan äärelliseksi tai äärettömäksi. Tällaisten "mustien" laatikoiden käyttäytyminen tunnetaan. Toinen tyyppi sisältää sellaiset "mustat" laatikot, joiden käyttäytymistä voidaan havaita vain kokeessa. Tässä tapauksessa eksplisiittisessä tai implisiittisessä muodossa esitetään hypoteesi "mustan" laatikon käyttäytymisen ennustettavuudesta probabilistisessa mielessä. Ilman alustavaa hypoteesia mikään yleistäminen on mahdotonta tai, kuten sanotaan, on mahdotonta tehdä induktiivista johtopäätöstä mustan laatikon kokeiden perusteella. N. Wiener ehdotti "valkoisen" laatikon käsitettä "mustan" laatikon mallin nimeämiseksi. "Valkoinen" laatikko koostuu tunnetuista komponenteista, eli tunnetuista X, Y, 8, λ. Sen sisältö on erityisesti valittu toteuttamaan sama lähtö-tuloriippuvuus kuin vastaava "musta" laatikko. Jatkuvan tutkimuksen ja yleistysten, hypoteesien ja mallien muodostamisen prosessissa on välttämätöntä säätää "valkoisen" laatikon organisaatiota ja muuttaa malleja. Tässä suhteessa mallintaessaan tutkijan on viitattava toistuvasti "musta" - "valkoinen" laatikko -suhdekaavioon.
Tarkastellaanpa, kuinka toisenlaisen "mustan" laatikon käyttäytymistä tutkitaan ja tutkitaan. Oletetaan, että meille on annettu jokin ohjausjärjestelmä, jonka sisäistä rakennetta ei tunneta. Ohjausjärjestelmässä on tulot ja lähdöt .
Tapa tutkia tämän "mustan" laatikon käyttäytymistä on suorittaa koe, jonka tulokset voidaan esittää taulukon muodossa. yksi.
Tätä "mustan" laatikon tutkimismenetelmää kutsutaan protokollaksi. Syötesuureiden arvot ajoittain voidaan valita mielivaltaisesti.
pöytä 1
Syötön tila | Ulostulon tila | Aika |
---|---|---|
............ | ............ | .... |
............ | ............ | .... |
Toinen tapa tutkia on syöttää joitain vakiosekvenssejä tuloihin. Tämä menetelmä on erityisen houkutteleva, koska sen avulla voit verrata useiden "mustien" laatikoiden käyttäytymistä ehtoihin valita ne, jotka täyttävät vaatimukset.
Ohjausjärjestelmien tutkimus liittyy käsitteisiin " todennäköisyysautomaatti ", "todennäköisyysjärjestelmä", mikä edellyttää niiden todennäköisyysominaisuuksien tutkimista. Näitä tarkoituksia varten voit rakentaa todennäköisyysmatriisin (taulukko 2), jossa jokaiselle sisääntulolle ja jokaiselle lähdölle ilmoitetaan ehdollinen todennäköisyys , joka tapahtuu vastauksena taulukossa annettuun [7]:een. 2.
Menetelmien kehittäminen "mustan" laatikon matemaattisten mallien rakentamiseksi on yksi tärkeimmistä kyberneettisistä ongelmista. Edellyttäen, että "mustasta" laatikosta on olemassa matemaattinen malli, on mahdollista liittää se mihin tahansa luokkaan, jonka kaikki järjestelmät ovat käyttäytymisellään isomorfisia.
"Mustan" laatikon matemaattisen kuvauksen luominen on eräänlainen taide. Joissakin tapauksissa on mahdollista muodostaa algoritmi, jonka mukaan "musta" laatikko reagoi mielivaltaiseen tulosignaaliin. Useimmissa tapauksissa kuitenkin yritetään luoda differentiaaliyhtälöitä, jotka yhdistävät "mustan" laatikon reaktion sen tuloihin tai, kuten sanotaan, sen syöttöärsykkeisiin.
Tieteelle "mustan" laatikon menetelmä on erittäin tärkeä. Hänen avullaan tehtiin monia merkittäviä löytöjä tieteessä. Esimerkiksi tiedemies Harvey ennusti sydämen rakenteen jo 1600-luvulla. Hän mallinsi sydämen työtä pumpulla lainaten ideoita täysin toiselta nykytiedon alueelta - hydrauliikasta. "Mustan" menetelmän käytännön arvo piilee ensinnäkin mahdollisuudessa tutkia erittäin monimutkaisia dynaamisia järjestelmiä ja toiseksi mahdollisuudessa korvata yksi "laatikko" toisella. Ympäröivä todellisuus ja biologia antavat paljon esimerkkejä järjestelmien rakenteen paljastamisesta "mustan" laatikon menetelmällä.
Tässä menetelmässä ohjelmaa käsitellään mustana laatikkona . Testauksen tarkoituksena on selvittää olosuhteet, joissa ohjelman toiminta ei ole määritelmien mukaista . Kaikkien ohjelman virheiden havaitsemiseksi on suoritettava kattava testaus , eli testaus kaikenlaisille tietojoukoille . Useimmille ohjelmille tämä ei ole mahdollista, joten käytetään järkevää testausta , jossa ohjelman testaus rajoittuu pieneen osaan mahdollisia tietojoukkoja. Tässä tapauksessa on tarpeen valita sopivimmat osajoukot, osajoukot, joilla on suurin todennäköisyys havaita virheitä.
Tarkastellaanpa kutakin näistä menetelmistä tarkemmin:
Vastaava osioMenetelmä perustuu kahteen periaatteeseen:
Testien kehittäminen tällä menetelmällä suoritetaan kahdessa vaiheessa : ekvivalenssiluokkien valinta ja testin rakentaminen.
Ekvivalenssiluokat erotetaan valitsemalla jokainen syöttöehto, joka on otettu viite- tai määrittelystä ja jaettu kahteen tai useampaan ryhmään. Tätä varten käytetään seuraavaa taulukkoa:
Syöttöehto | Oikeat vastaavuusluokat | Väärät vastaavuusluokat |
' | ' | ' |
Ekvivalenssiluokkien valinta on heuristinen tapa, mutta on olemassa useita sääntöjä:
Testien määritelmä:
Rajaehdot ovat tilanteita, jotka esiintyvät syöteekvivalenssiluokkien ylä- ja alarajoilla.
Raja-arvoanalyysi eroaa vastaavista osioista seuraavilla tavoilla:
Menetelmä vaatii tiettyä luovuutta ja erikoistumista käsillä olevaan tehtävään.
Sääntöjä on useita:
Oikein käytettynä raja-arvoanalyysi voi havaita suuren määrän virheitä. Näiden rajojen määrittäminen kullekin tehtävälle voi kuitenkin olla erillinen vaikea tehtävä. Tämä menetelmä ei myöskään tarkista syöttöarvojen yhdistelmiä.
Syy-seuraus-analyysiTestirakennuksen vaiheet:
Taulukkoon on merkitty rajoitukset ja kuvaukset yhdistelmistä, jotka eivät ole mahdollisia. Tämän lähestymistavan haittana on rajaehtojen huono tutkimus.
Virhe arvausKokenut testaaja löytää virheet ilman menetelmiä, mutta samalla hän käyttää alitajuisesti virheen arvausmenetelmää. Tämä menetelmä perustuu suurelta osin intuitioon. Menetelmän perusideana on tehdä luettelo, jossa luetellaan mahdolliset virheet ja tilanteet, joissa näitä virheitä saattaa esiintyä. Sitten luettelon perusteella kootaan testit.