Dom Rozwój Co to jest testowanie mutacji? - definicja z techopedia

Co to jest testowanie mutacji? - definicja z techopedia

Spisu treści:

Anonim

Definicja - Co oznacza testowanie mutacji?

Testowanie mutacji to metoda testowania oprogramowania, w której program lub kod źródłowy jest celowo manipulowany, a następnie zestaw testów w stosunku do zmutowanego kodu. Mutacje wprowadzone do kodu źródłowego mają na celu naśladowanie typowych błędów programistycznych. Dobry zestaw testów jednostkowych zwykle wykrywa mutacje programu i kończy się niepowodzeniem automatycznie.


Testowanie mutacji jest stosowane na wielu różnych platformach, w tym Java, C ++, C # i Ruby.

Techopedia wyjaśnia testy mutacji

Testowanie mutacji jest prostą, ale pomysłową metodą sprawdzania poprawności kodu źródłowego i procesu testowania. Koncepcja została po raz pierwszy wymyślona przez Richarda Liptona w 1971 roku i od tego czasu wzbudziło zainteresowanie.


Mechanizm działania testu mutacji jest prosty i bezpośredni. Wybrano fragment kodu źródłowego obejmujący wszystkie testy jednostkowe. Po sprawdzeniu wszystkich pozytywnych testów dla danego kodu źródłowego, do programu wprowadzana jest mutacja.


Stopień mutacji zastosowany do danego bloku kodu może się różnić. Typowa implementacja testów mutacji polega na zamianie operatora logicznego na odwrotny. Na przykład operator „! =” Jest używany zamiast „= =”. W niektórych przypadkach mutacja obejmuje zmianę kolejności wierszy w celu zmiany kolejności wykonywania lub nawet usunięcie kilku wierszy kodu. Złożone poziomy testowania mutacji mogą powodować błędy kompilacji.


Po zmodyfikowaniu programu wykonywany jest zestaw testów jednostkowych względem zmutowanego kodu. Zmutowany kod przechodzi lub kończy test jednostkowy, w zależności od jakości testowania. Dobrze napisany test jednostkowy musi wykrywać zmutowane błędy kodu, co prowadzi do niepowodzenia. Test jednostkowy, który nie wykrywa błędów kodu, może wymagać przepisania.


Testowanie mutacji zapewnia następujące korzyści:

  • Identyfikacja błędu kodu programu
  • Efektywne opracowywanie przypadków testowych
  • Wykrywanie luk w danych testowych
  • Poprawiona jakość oprogramowania
  • Eliminacja niejednoznaczności kodu

Wady testowania mutacji obejmują:

  • Trudna implementacja złożonych mutacji
  • Drogie i czasochłonne
  • Wymaga wykwalifikowanych testerów ze znajomością programowania

Co to jest testowanie mutacji? - definicja z techopedia