Mi az a modell alapú tesztelés?

Mi az a modell alapú tesztelés?

A modellalapú tesztelés egy olyan szoftvertesztelési technika, amely során a tesztelt szoftver futási idejű viselkedését a modell által adott előrejelzésekkel ellenőrzik. A modell egy rendszer viselkedésének leírása. A viselkedés leírható bemeneti szekvenciákkal, műveletekkel, feltételekkel, kimenettel és a bemenettől a kimenetig terjedő adatáramlással. Gyakorlatilag érthetőnek és újrafelhasználhatónak kell lennie; megoszthatónak pontos leírást kell tartalmaznia a tesztelt rendszerről.

Számos modell áll rendelkezésre, és a rendszer viselkedésének különböző aspektusait írja le. Példák a modellre:

  • Adatáramlás
  • Ellenőrző áramlás
  • Függőségi grafikonok
  • Határozati táblázatok
  • Állapotváltó gépek

A modellalapú tesztelés leírja, hogy egy rendszer hogyan viselkedik egy (a modell által meghatározott) műveletre válaszul. Adjon műveletet, és ellenőrizze, hogy a rendszer az elvárásoknak megfelelően reagál-e.

Ez egy könnyű formális módszer a rendszer érvényesítésére. Ez a tesztelés hardver és szoftver tesztelésre egyaránt alkalmazható.

Modell alapú tesztelési példa

Modell alapú tesztelés

A fenti modell elmagyarázza a jegyzettömbben történő versírás egyszerűsített megközelítését és az egyes lépésekhez kapcsolódó lehetséges műveleteket. Minden egyes művelethez (például kezdés, vers beírása, mentés), Teszt eset generálható, és a kimenet ellenőrizhető.

Az MBT típusai

Kétféle modell alapú tesztelési keret létezik:

  1. Offline / a priori: Tesztcsomagok generálása a végrehajtás előtt. A tesztcsomag nem más, mint tesztesetek gyűjteménye.
  2. Online / on-the-fly: Tesztcsomagok generálása tesztvégrehajtás során

Különböző modellek a tesztelésben

Az MBT megértéséhez meg kell érteni néhány alább ismertetett modellt. Nézzük ezeket egyenként:

Véges állapotú gépek

Ez a modell segít a tesztelőknek az eredmény értékelésében a kiválasztott bemenettől függően. A bemenetek különféle kombinációi a rendszer megfelelő állapotát eredményezhetik.

A rendszernek meghatározott állapota és aktuális állapota lesz, amelyet a tesztelők által megadott bemenetek vezérelnek.

Vegye figyelembe a példát -

Van egy rendszer, amely lehetővé teszi az alkalmazottak számára, hogy bejelentkezzenek az alkalmazásba. Most a munkavállaló jelenlegi állapota „Ki”, és a rendszerbe való bejelentkezés után „Be” lett. Az „in” állapotban az alkalmazott megtekintheti, kinyomtathatja és beszkennelheti a rendszerben lévő dokumentumokat.

Véges állapotú gépek

Állami diagramok

Ez a véges állapotú gép kiterjesztése, és összetett és valós idejű rendszerekben használható. Az állapotdiagramok a rendszer különféle viselkedéseinek leírására szolgálnak. Határozott számú állapota van. A rendszer viselkedését elemzik és események formájában ábrázolják minden állapotra vonatkozóan.

Például -

A hibák a hibakezelő eszközben jelennek meg Új állapotú. Miután a fejlesztők kijavították, át kell állítani Javítva állapotra. Ha a hibát nem javították ki, módosítsa az állapotot Újranyitásra. Az állapotdiagramokat úgy kell megtervezni, hogy minden államhoz egy-egy eseményt hívjanak fel.

Állami diagramok

Egységes modellezési nyelv (UML)

Egységes modellezési nyelv (UML) egy szabványos, általános célú modellező nyelv. Az UML egy sor grafikus jelölési technikát tartalmaz a rendszer nagyon bonyolult viselkedését leíró vizuális modellek létrehozásához.

Az UML olyan jelölésekkel rendelkezik, mint például:

  • Tevékenységek
  • Actors
  • Üzleti folyamat
  • alkatrészek
  • Programozási nyelv

Egységes modellezési nyelv

A modell alapú tesztelés kihívásai

Az MBT bevezetése minden szervezetben nyilvánvalóan nagy befektetést és erőfeszítést igényel. Az alábbiakban bemutatjuk az MBT hátrányait Szoftverfejlesztés.

  • A tesztelőknél szükséges készségek
  • A tanulási görbe ideje több lesz
  • Magát a modellt nehéz megérteni

A modelltesztelés előnyei

Az MBT előnyei a következők:

  • Egyszerű teszteset/csomag karbantartás
  • Költségcsökkentés
  • Továbbfejlesztett teszt lefedettség
  • Különféle teszteket tud futtatni n számú gépen
  • A hiba korai felismerése
  • A hibák számának növekedése
  • Időmegtakarítás
  • Fokozottabb tesztelői elégedettség

Következtetés

A tesztelők egyébként is mentális modelleket konstruálnak a tesztelés során. Ezek a mentális modellek papíron modellekké alakíthatók. Ez segíti a tesztelőket az olvashatóság és az újrafelhasználhatóság elérésében.

A modell alapú tesztelés egy új megközelítés szoftver tesztelés. A szoftvertesztelés fejlődése az alábbiakban látható -

Evolutoin szoftvertesztelés