Domov vývoj Čo je testovanie mutácií? - definícia z technológie

Čo je testovanie mutácií? - definícia z technológie

Obsah:

Anonim

Definícia - Čo znamená testovanie mutácie?

Testovanie mutácií je metóda testovania softvéru, pri ktorej sa zámerne manipuluje s programom alebo zdrojovým kódom, po ktorom nasleduje sada testov proti mutovanému kódu. Mutácie zavedené do zdrojového kódu sú navrhnuté tak, aby napodobňovali bežné chyby programovania. Dobrý test jednotkových testov zvyčajne zisťuje mutácie programu a automaticky zlyháva.


Testovanie mutácií sa používa na mnohých rôznych platformách vrátane Java, C ++, C # a Ruby.

Techopedia vysvetľuje testovanie mutácie

Testovanie mutácií je jednoduchá, ale dômyselná metóda použitá na overenie správnosti zdrojového kódu a procesu testovania. Tento koncept bol prvýkrát vytvorený Richardom Liptonom v roku 1971 a od tej doby sa objavil prudký nárast záujmu.


Pracovný mechanizmus testovania mutácií je jednoduchý a priamy. Vyberie sa časť zdrojového kódu zahŕňajúca všetky testy jednotiek. Po overení všetkých pozitívnych testov na daný zdrojový kód sa do programu zavedie mutácia.


Stupeň mutácie aplikovaný na daný kódový blok sa môže meniť. Bežná implementácia testovania mutácií zahŕňa nahradenie logického operátora jeho inverziou. Napríklad namiesto "= =" sa použije operátor "! =". V niektorých prípadoch mutácia zahŕňa zmenu usporiadania riadkov, aby sa zmenil príkaz na vykonanie alebo dokonca vymazanie niekoľkých riadkov kódu. Komplexné úrovne testovania mutácií môžu viesť k chybám pri kompilácii.


Po úprave programu sa vykoná sada jednotkových testov proti mutovanému kódu. Mutovaný kód prejde alebo zlyhá pri teste jednotky v závislosti od kvality testovania. Dobre napísaný test jednotky musí zistiť chyby mutovaného kódu, čo má za následok zlyhanie. Test jednotky, ktorý nedokáže zistiť chyby kódu, môže vyžadovať prepísanie.


Testovanie mutácií umožňuje nasledujúce výhody:

  • Identifikácia poruchy programového kódu
  • Efektívny vývoj testovacieho prípadu
  • Detekcia medzier v testovacích údajoch
  • Vylepšená kvalita softvérového programu
  • Odstránenie nejednoznačnosti kódu

Nevýhody testovania mutácií zahŕňajú:

  • Náročná implementácia komplexných mutácií
  • Drahé a časovo náročné
  • Vyžaduje skúsených testerov so znalosťami programovania

Čo je testovanie mutácií? - definícia z technológie