Mi a kódlefedettség?
A kód lefedettségét mérőszámnak nevezzük, amelyben leírjuk a program forráskódjának mértékét, amelyet tesztelni kell. A kód lefedettsége, röviden, a white box tesztelési módszer egyik típusa, ahol megkeressük a program azon részeit, amelyeket a végrehajtott teszt esetek nem hajtottak végre. Néhány teszt eset létrehozásába beépülnek, hogy növeljék a lefedettséget, valamint meghatározzák a kód lefedettségének elég jó mértékét. Ez a rendszer azonban sok esetben információkat gyűjt a futó programról. A kód lefedettség ezenkívül magában foglalja azt a forráskód információival együtt annak érdekében, hogy elkészítse a tesztkészlet kódfedettségéről szóló jelentést.
Hogyan működik a kódfedezés?
Valójában különféle megközelítések léteznek a kód lefedettségének mérésére. Ha széles körben vizsgáljuk, létezik 3 megközelítés, amelyek a következők:
- Forráskód-műszerezés: A forráskód-műszerezés hozzáadja a műszerezési nyilatkozatokat a forráskódhoz, majd összeállítja a kódot a szokásos fordítóeszközzel együtt, hogy instrumentális műszereket kapjon nekünk.
- Köztes kódmérés: A közbenső kódmérésnél az összeállított fájlok új bájtkódok hozzáadásával készülnek, majd az új osztály generálódik.
- Futásidejű információgyűjtés: A futásidejű információgyűjtés során összegyűjtjük az információkat a környezetről, amely futásidejű, mivel a kód végrehajtódik, hogy meghatározza a lefedettségre vonatkozó információkat.
Mivel a kód végrehajtása a teszt alatt történik, a kódlefedettség-rendszer információt gyűjt arról, hogy melyik állításokat hajtják végre. Ezt az információt majd a jelentések alapjául használnák. Ezenkívül a kódlefedettség-módszerek a gyűjtött lefedettség-információk különböző formáitól függően különböznek. A kód lefedettségének különféle módjai léteznek, ha túlmutatunk az alapvető utasítás lefedettség módszereken.
A kódfedezés módszerei
Számos módszer létezik a kód lefedettségére. Néhányan vannak felsorolva az alábbiakban:
- Feltétel-lefedettség
- Mikronéziai fedezet
- Nyilatkozat lefedettsége
- Döntési lefedettség
- Ágazati lefedettség
1. Nyilatkozat lefedettsége
- Ez a white box teszttervezési technika, ahol az összes futtatható utasítás végrehajtásával legalább egyszer foglalkozunk, amely a forráskódban létezik. Kód lefedettségre van szükség a számításban, valamint a forráskódban létező, valamint a követelmények megadása esetén végrehajtható kijelentések mérésében, amelyek léteznek a forráskódban.
- Erre a módszerre van szükség a forgatókönyvek származtatásához, a teszt alatt létező kód szerkezetétől függően.
2. Döntési lefedettség
- Ez a módszer hasznos minden logikai kifejezés valós vagy hamis kimeneteleinek jelentésében. A lefedettség kifejezései gyakran bonyolulttá válnak. Ezért meglehetősen nehéz elérni a 100% -os lefedettséget.
- Ez az oka annak, hogy különféle módszerek léteznek az ilyen típusú mutatók jelentésére. Ezek a teljes módszerek alapvetően a legfontosabb kombinációk lefedettségével foglalkoznak. A döntési lefedettség nagy érzékenységet biztosít az áramlás szabályozása érdekében.
3. Ágazati lefedettség
- Amikor erről a típusról beszélünk, azt értjük, hogy minden kimenetet, amely a kódmodultól érkezik, teszteljük. Példaként tekinthetjük, hogy ha a kimenetek binárisak, akkor a valódi és a hamis kimeneteket is teszteljük.
- Ágazati lefedettség segít abban, hogy biztosítsuk, hogy az összes lehetséges ág, amely az egyes döntésekből származik, a feltételt legalább egyszer végrehajtja.
- Az Branch lefedettség módszerrel kiszámolhatjuk a kódszegmensek hányadait, amelyek függetlenek. Ezenkívül ez a módszer lehetővé teszi számunkra, hogy megtudjuk, a kód mely szakaszai nem tartalmazzák az ágakat.
Létezik a fióktelep fedezetének kiszámítására szolgáló képlet:
Ágazati lefedettség = A végrehajtott fióktelepek száma / a végrehajtott ágak teljes száma
4. Feltétel-lefedettség
- A feltételes lefedettség, amelyet kifejezésfedettségnek is nevezünk, elmondja nekünk, hogy hogyan kell kiértékelni azokat a változókat vagy a feltételes kijelentésben létező al-kifejezéseket.
- Vegyünk egy példát, ahol egy kifejezés olyan logikai műveletekből áll, mint például AND, OR vagy XOR, amelyek a lehetőségek teljes számából állnak.
- Ez a módszer valójában sokkal jobb érzékenységet biztosít számunkra a folyamatok szabályozása szempontjából, a döntési lefedettséghez viszonyítva. Ez a módszer nem garantálja a teljes döntési lefedettséget.
Létezik a fióktelep fedezetének kiszámítására szolgáló képlet:
Feltétel lefedettség = A végrehajtott műveletek száma / a végrehajtott műveletek teljes száma
5. Vékony állapotú gépfedettség
- Ez a módszer a kód lefedettségének legbonyolultabb fajtája. Ennek oka az, hogy ez a módszer valóban a forma viselkedésén működik.
- Ezzel a módszerrel azt is megtudtuk, hogy az időfüggő államok közül hány látogatják meg és szállítják át. Ezenkívül ez a módszer is ellenőrzi, hogy hány szekvenciát vesznek figyelembe a véges állapotú gépen.
A kódfedezés előnyei
Néhány előnye az alábbiakban található:
- Ez nagyon hasznos a kód lefedettségének mennyiségi mérése szempontjából
- Ez lehetővé teszi számunkra, hogy hozzunk létre extra teszt eseteket, hogy növeljük a lefedettséget
- A kód lefedettsége lehetővé teszi számunkra a program azon részeinek megtalálását is, amelyeket a teszt esetek nem gyakorolnak.
A kódfedezet hátrányai
Néhány hátrányt az alábbiakban adunk meg:
- Ha egy adott szolgáltatás nem megfelelő módon valósul meg a tervben, a kód lefedettsége továbbra is azt jelenti, hogy a lefedettség 100%.
- Lehetetlen megérteni, ha a szolgáltatás minden lehetséges értékét a kód lefedettségén keresztül teszteljük
- Azt sem mondja el, hogy mennyire és mennyire fedeztük fel logikánkat.
Következtetés
A kód lefedettségét mérőszámnak tekintjük, amelyben leírjuk, hogy a program melyik forráskódját tesztelték. Ezenkívül segít kiszámítani a teszt végrehajtásának hatékonyságát. Ezenkívül az utasítás lefedettség azt jelenti, hogy az összes futtatható nyilatkozatot legalább egyszer végrehajtja.
Ajánlott cikkek
Ez egy útmutató a kódfedezéshez. Itt tárgyaljuk a módszereket és a kód lefedettség működését? valamint előnyei és hátrányai. A következő cikkeket is megnézheti további információkért -
- Mennyire könnyíti meg a tesztfedezet a munkát?
- Különféle GUI tesztelő eszközök
- A mutációs tesztelés típusai
- Mi a CodeIgniter?
- Kódfedő eszközök | A 6 legnépszerűbb kódfedeles eszköz
- Mi a teszt eset? | Tippek és trükkök