Cuprins:
Definiție - Ce înseamnă testarea mutației?
Testarea mutației este o metodă de testare software în care programul sau codul sursă este manipulat în mod deliberat, urmată de suita de testare împotriva codului mutat. Mutațiile introduse codului sursă sunt concepute pentru a imita erorile comune de programare. Un set de teste de unitate bun detectează de obicei mutațiile programului și eșuează automat.
Testarea mutației este folosită pe mai multe platforme diferite, inclusiv Java, C ++, C # și Ruby.
Techopedia explică testarea mutațiilor
Testarea mutației este o metodă simplă, dar ingenioasă, utilizată pentru validarea corectitudinii codului sursă și a procesului de testare. Conceptul a fost creat prima dată de Richard Lipton în 1971 și a existat o creștere a interesului de atunci.
Mecanismul de funcționare al testării mutației este simplu și simplu. Este selectată o bucată de cod sursă care cuprinde toate testele unității. După verificarea tuturor testelor pozitive pentru un cod sursă dat, o mutație este introdusă în program.
Gradul de mutație aplicat unui bloc de cod dat poate varia. O implementare comună de testare a mutațiilor implică înlocuirea unui operator logic cu inversul său. De exemplu, operatorul "! =" Este folosit în locul lui "= =." În unele cazuri, mutația implică rearanjarea liniilor pentru a schimba ordinea de execuție sau chiar ștergerea câtorva linii de cod. Nivelurile complexe de testare a mutațiilor pot duce la erori de compilare.
Odată modificat un program, o serie de teste unitare sunt executate cu codul mutat. Codul mutat trece sau nu reușește testul unității, în funcție de calitatea testării. Un test bine scris al unității trebuie să detecteze erori de cod mutate, ceea ce duce la eșec. Un test de unitate care nu reușește să detecteze erorile de cod poate necesita o rescriere.
Testarea mutației facilitează următoarele avantaje:
- Identificarea defectelor codului de program
- Dezvoltarea eficientă a cazurilor de test
- Detectarea unor lacune în datele de testare
- Calitatea programului software îmbunătățit
- Eliminarea ambiguității codului
Dezavantajele testării mutațiilor includ:
- Implementarea dificilă a mutațiilor complexe
- Costisitoare și consumatoare de timp
- Necesită testatori calificați cu cunoștințe de programare
