Tartalomjegyzék:
Meghatározás - Mit jelent a forráskód elemzése?
A forráskód elemzése a program forráskódjának automatikus tesztelése azzal a céllal, hogy megkeresse a hibákat és kijavítsa azokat az alkalmazás eladása vagy terjesztése előtt.
A forráskód elemzése szinonimája a statikus kód elemzésnek, ahol a forráskódot egyszerűen kódként elemzik, és a program nem fut. Ez kiküszöböli a teszt esetek létrehozásának és használatának szükségességét, és elkülönülhet a szolgáltatás-specifikus hibáktól, például a gombok színétől, amelyek eltérnek a specifikációban szereplőtől. Arra összpontosít, hogy a programban olyan hibákat találjon, amelyek károsak lehetnek a megfelelő működésére, például az összeomlást okozó kódsorok.
A Techopedia magyarázza a forráskód-elemzést
A forráskód elemzése alapvetően az automatikus kód hibakeresés. A cél olyan hibák és hibák megtalálása, amelyek a programozó számára nem nyilvánvalóak. Arra szolgál, hogy olyan hibákat találjon, mint például a lehetséges puffer-túlcsordulások vagy a mutatók rendetlen használata és a szemetesgyűjtési funkciókkal való visszaélés, amelyeket hackerek használhatnak fel.
A kód analizátorok olyan szabályok alapján működnek, amelyek megmondják, mit kell keresni. Túl kevés pontossággal az analizátor túlságosan sok hamis pozitívot képes kiszámítani és haszontalan figyelmeztetésekkel eláraszthatja a felhasználót, míg a túl nagy pontosság túl sokáig tarthat a befejezéshez; ezért egyensúlynak kell lennie.
Kétféle analizátor létezik:
- Procedúrák közötti - mintákat észlel az egyik függvényről a másikra, és ezek a minták korrelálva vannak, hogy az analizátor modellt készítsen és szimulálja a végrehajtási útvonalakat.
- Intraprocedural - a minta-illesztésre összpontosít, és attól függ, hogy milyen mintákat keres a felhasználó.
Az interprodurendális analizátorok modernabbak és összetettebbek. Jó példa erre a Coverity, Fortify és a Microsoft saját központosított eszköze, a PREfix.
