Tartalomjegyzék:
Meghatározás - Mit jelent a mutációs tesztelés?
A mutációs tesztelés a szoftver tesztelésének olyan módszere, amelyben a programot vagy a forráskódot szándékosan manipulálják, amelyet a mutáns kóddal szembeni tesztelés követ. A forráskódba bevezetett mutációk célja a közös programozási hibák utánozása. Egy jó egység tesztkészlet általában felismeri a program mutációit, és automatikusan meghiúsul.
A mutációs tesztelést sokféle platformon használják, beleértve a Java, C ++, C # és a Ruby szoftvert.
A Techopedia magyarázza a mutációs tesztelést
A mutációs tesztelés egy egyszerű, de ötletes módszer a forráskód helyességének és a tesztelési folyamat validálására. A koncepciót először Richard Lipton 1971-ben megalkotta, és azóta óriási az érdeklődés.
A mutációs tesztek működési mechanizmusa egyszerű és érthető. A forráskód egy darabja, amely magában foglalja az összes egységtesztet. Miután ellenőrizte az összes pozitív tesztet egy adott forráskódra, mutációt vezet be a programba.
Az adott kódblokkra alkalmazott mutáció mértéke változhat. A közös mutációs tesztelés megvalósítása magában foglalja a logikai operátor helyettesítését inverzével. Például a "! =" Operátort használjuk a "= =" helyett. Egyes esetekben a mutáció magában foglalja a sorok átrendezését a végrehajtási sorrend megváltoztatása érdekében, vagy akár néhány kódsor törlését is. A komplex mutációs tesztelési szintek összeállítási hibákat okozhatnak.
Miután egy programot módosítottak, egy sor egységteszt kerül végrehajtásra a mutált kóddal szemben. A mutált kód a teszt minőségétől függően sikeresen teljesíti vagy meghiúsítja az egység tesztet. Egy jól megírt egységi tesztnek fel kell tárnia a mutált kód hibákat, amelyek hibát eredményeznek. Az egységteszt, amely nem érzékeli a kódhibákat, újraírást igényelhet.
A mutációs tesztelés megkönnyíti a következő előnyöket:
- Programkód-azonosítás
- Hatékony tesztfejlesztés
- Kiskapuk észlelése a teszt adatokban
- Továbbfejlesztett szoftverprogramminőség
- A kód félreérthetőségének kiküszöbölése
A mutációs tesztelés hátrányai a következők:
- Komplex mutációk nehéz végrehajtása
- Drága és időigényes
- Programozási ismeretekkel rendelkező képzett tesztelőkre van szükség