A fekete doboz tesztelés vagy viselkedésteszt egy olyan stratégia (módszer), amely egy objektum (program, rendszer) funkcionális viselkedését a külső világ szempontjából teszteli, amely nem használja fel az objektum belső szerkezetére (kódjára) vonatkozó ismereteket. tesztelés alatt áll. Más szóval, a fekete doboz tesztelését olyan tesztelők végzik, akik nem férnek hozzá az alkalmazás forráskódjához. A stratégia egy tesztkészlethez tartozó tesztek kiválasztásának és létrehozásának szisztematikus módszereit jelenti. A viselkedési vizsgálati stratégia a műszaki követelményekből és azok specifikációiból származik [1] .
A "fekete doboz" olyan vizsgálati tárgy, amelynek belső szerkezete ismeretlen. A "fekete doboz" fogalmát W. R. Ashby javasolta . A kibernetikában lehetővé teszi a rendszerek viselkedésének, azaz a különféle külső hatásokra való reakcióinak tanulmányozását, ugyanakkor elvonatkoztatást belső szerkezetüktől.
Csak bemenetekkel és kimenetekkel történő manipulációval bizonyos vizsgálatok elvégezhetők. A gyakorlatban mindig felmerül a kérdés, hogy a „fekete” doboz homomorfizmusa mennyiben tükrözi a vizsgált modell megfelelőségét, vagyis mennyire tükröződik az eredeti alapvető tulajdonságai a modellben.
Bármely vezérlőrendszer időbeni leírását az állapotok sorrendjének képe jellemzi, ahogyan az előtte álló cél felé halad. A vezérlőrendszerben az átalakulás lehet egy az egyhez, majd ezt nevezzük izomorfnak, vagy csak egy az egyhez, egy irányba. Ebben az esetben a transzformációt homomorfnak nevezzük.
A „fekete doboz” egy olyan kibernetikai rendszer komplex homomorf modellje, amelyben tiszteletben tartják a sokféleséget. Csak akkor tekinthető kielégítő modellnek a rendszernek, ha olyan mennyiségű információt tartalmaz, amely tükrözi a rendszer sokszínűségét. Feltételezhető, hogy minél több perturbáció hat a rendszermodell bemeneteire, annál nagyobb diverzitással kell rendelkeznie a vezérlőnek.
Jelenleg kétféle „fekete” doboz ismeretes. Az első típusba tartozik bármely "fekete" doboz, amely automatának tekinthető, végesnek vagy végtelennek nevezhető . Az ilyen "fekete" dobozok viselkedése ismert. A második típusba olyan "fekete" dobozok tartoznak, amelyek viselkedése csak kísérletben figyelhető meg. Ebben az esetben explicit vagy implicit formában egy hipotézis fogalmazódik meg a „fekete” doboz viselkedésének valószínűségi értelemben vett kiszámíthatóságáról. Előzetes hipotézis nélkül lehetetlen bármiféle általánosítás, vagy ahogy mondani szokás, lehetetlen induktív következtetést levonni a fekete doboz-kísérletek alapján. N. Wiener a „fehér” doboz koncepcióját javasolta a „fekete” doboz modell megjelölésére. A „fehér” doboz ismert komponensekből áll, azaz ismert X, Y, δ, λ. Tartalma kifejezetten úgy lett megválasztva, hogy megvalósítsa ugyanazt a kimeneti-bemeneti függőséget, mint a megfelelő "fekete" dobozé. A folyamatban lévő kutatások és általánosítások, hipotézisek, minták felállítása során szükségessé válik a „fehér” doboz szerveződésének módosítása és a modellek megváltoztatása. Ezzel kapcsolatban a modellezés során a kutatónak többször is hivatkoznia kell a "fekete" - "fehér" doboz kapcsolati sémára.
Nézzük meg, hogyan tanulmányozzák és vizsgálják a második típusú „fekete doboz” viselkedését. Tételezzük fel, hogy kapunk valamilyen ellenőrzési rendszert, amelynek belső felépítése ismeretlen. A vezérlőrendszer bemenetekkel és kimenetekkel rendelkezik .
Ennek a "fekete" doboznak a viselkedésének tanulmányozásának módja egy kísérlet elvégzése, amelynek eredményeit táblázat formájában lehet bemutatni. egy.
A "fekete" doboz tanulmányozásának ezt a módszerét protokollnak nevezik. A bemeneti mennyiségek értékei időnként tetszőlegesen megválaszthatók.
Asztal 1
Beviteli állapot | Kimenet állapota | Idő |
---|---|---|
............ | ............ | .... |
............ | ............ | .... |
A felfedezés másik módja néhány szabványos szekvencia betáplálása a bemenetekre. Ez a módszer különösen vonzó, mert lehetővé teszi több "fekete" doboz viselkedésének összehasonlítását azzal a feltétellel, hogy kiválasztja azokat, amelyek megfelelnek a követelményeknek.
A vezérlőrendszerek tanulmányozása a " valószínűségi automata ", a "valószínűségi rendszer" fogalmaihoz kapcsolódik, ami megköveteli valószínűségi tulajdonságaik tanulmányozását. Ebből a célból létrehozhat egy valószínűségi mátrixot (2. táblázat), amelyben minden bemenethez és kimenethez a feltételes valószínűséget jelzi , amely a táblázatban megadott [7]-re válaszul történik . 2.
A „fekete doboz” matematikai modelljeinek megalkotására szolgáló módszerek kidolgozása az egyik fontos kibernetikai probléma. Feltéve, hogy létezik a „fekete” doboz matematikai modellje, lehetségessé válik bármely osztályhoz hozzárendelni, amelynek minden rendszere izomorf viselkedésű.
A "fekete" doboz matematikai leírásának elkészítése egyfajta művészet. Bizonyos esetekben lehetőség van olyan algoritmus kialakítására, amely szerint a „fekete” doboz tetszőleges bemeneti jelre reagál. A legtöbb esetben azonban olyan differenciálegyenleteket próbálnak felállítani, amelyek a "fekete" doboz reakcióját a bemeneteihez, vagy ahogy mondják, a bemeneti ingereihez kapcsolják.
A tudomány számára a „fekete doboz” módszer nagy jelentőséggel bír. Segítségével számos kiemelkedő felfedezés született a tudományban. Például Harvey tudós megjósolta a szív szerkezetét a 17. században. A szív munkáját pumpával modellezte, ötleteket kölcsönzött a kortárs tudás egy teljesen más területéről - a hidraulikából. A „fekete doboz” módszer gyakorlati értéke egyrészt a nagyon összetett dinamikus rendszerek tanulmányozásának lehetőségében rejlik, másrészt abban, hogy az egyik „dobozt” le lehet cserélni egy másikkal. A környező valóság és a biológia rengeteg példát hoz a rendszerek szerkezetének feltárására a „fekete doboz” módszerrel.
Ennél a módszernél a programot fekete dobozként kezeljük . A tesztelés célja, hogy kiderítse, milyen körülmények között a program viselkedése nem felel meg a specifikációnak . A program összes hibájának észleléséhez kimerítő tesztelést kell végezni , azaz mindenféle adatkészleten tesztelni kell . A legtöbb program esetében ez nem lehetséges, ezért ésszerű tesztelést alkalmaznak , amelyben a program tesztelése a lehetséges adatkészletek egy kis részhalmazára korlátozódik. Ebben az esetben a legmegfelelőbb részhalmazokat kell kiválasztani, azokat a részhalmazokat, amelyeknél a legnagyobb valószínűséggel észlelnek hibákat.
Nézzük meg közelebbről az egyes módszereket:
Egyenértékű partícióA módszer két elven alapul:
A tesztek fejlesztése ezzel a módszerrel két szakaszban történik : az ekvivalencia osztályok kiválasztása és a teszt felépítése.
Az ekvivalenciaosztályokat az egyes bemeneti feltételek kiválasztásával lehet megkülönböztetni, amelyek a referencia- vagy specifikációból származnak, és két vagy több csoportra oszthatók. Ehhez a következő táblázat szolgál:
Bemeneti feltétel | Megfelelő ekvivalencia osztályok | Rossz ekvivalencia osztályok |
' | ' | ' |
Az ekvivalenciaosztályok kiválasztása heurisztikus módszer, de számos szabály érvényesül:
A tesztek meghatározása:
A peremfeltételek olyan helyzetek, amelyek a bemeneti ekvivalencia osztályok felső és alsó határán fordulnak elő.
A határérték-elemzés a következő módokon különbözik az egyenértékű particionálástól:
A módszer bizonyos fokú kreativitást és szakosodást igényel az adott feladatban.
Számos szabály létezik:
A határérték-elemzés, ha helyesen alkalmazzák, nagyszámú hibát észlelhet. Ezeknek a határoknak az egyes feladatokhoz való meghatározása azonban külön nehéz feladat lehet. Ezenkívül ez a módszer nem ellenőrzi a bemeneti értékek kombinációit.
Ok-okozati elemzésTesztépítési lépések:
A táblázat korlátozásokkal és a nem lehetséges kombinációk leírásával van ellátva. Ennek a megközelítésnek a hátránya a peremfeltételek nem megfelelő tanulmányozása.
Hiba tippA nagy tapasztalattal rendelkező tesztelő mindenféle módszer nélkül talál hibákat, ugyanakkor tudat alatt alkalmazza a hiba kitalálásának módszerét. Ez a módszer nagyrészt az intuíción alapul. A módszer fő gondolata egy lista készítése, amely felsorolja a lehetséges hibákat és helyzeteket, amelyekben ezek a hibák előfordulhatnak. Ezután a lista alapján teszteket állítanak össze.