Huis Ontwikkeling Wat is mutatietesten? - definitie van techopedia

Wat is mutatietesten? - definitie van techopedia

Inhoudsopgave:

Anonim

Definitie - Wat betekent mutatietesten?

Mutatietesten is een methode voor het testen van software waarbij programma- of broncode opzettelijk wordt gemanipuleerd, gevolgd door een reeks testen tegen de gemuteerde code. De mutaties die zijn geïntroduceerd in de broncode zijn ontworpen om veel voorkomende programmeerfouten te imiteren. Een goede testeenheid detecteert meestal de programmamutaties en mislukt automatisch.


Mutatietests worden op veel verschillende platforms gebruikt, waaronder Java, C ++, C # en Ruby.

Techopedia legt mutatietesten uit

Mutatietesten is een eenvoudige maar ingenieuze methode die wordt gebruikt om de juistheid van de broncode en het testproces te valideren. Het concept werd voor het eerst bedacht door Richard Lipton in 1971 en er is sinds die tijd veel belangstelling.


Het werkingsmechanisme van mutatietesten is eenvoudig en duidelijk. Er is een broncode geselecteerd die alle eenheidstests omvat. Na het verifiëren van alle positieve testen voor een gegeven broncode, wordt een mutatie in het programma geïntroduceerd.


De mate van mutatie die op een bepaald codeblok wordt toegepast, kan variëren. Een veel voorkomende implementatie van mutatietests omvat het vervangen van een logische operator door zijn inverse. Operator "! =" Wordt bijvoorbeeld gebruikt in plaats van "= =." In sommige gevallen omvat mutatie het herschikken van lijnen om de uitvoeringsvolgorde te wijzigen of zelfs een paar regels code te verwijderen. Complexe testniveaus voor mutaties kunnen compilatiefouten tot gevolg hebben.


Nadat een programma is gewijzigd, wordt een reeks unit-tests uitgevoerd tegen de gemuteerde code. De gemuteerde code slaagt of slaagt niet voor de unit-test, afhankelijk van de testkwaliteit. Een goed geschreven eenheidstest moet gemuteerde codefouten detecteren, wat resulteert in een storing. Een eenheidstest die geen codefouten detecteert, kan een herschrijving vereisen.


Mutatietesten vergemakkelijkt de volgende voordelen:

  • Programma code fout identificatie
  • Effectieve ontwikkeling van testgevallen
  • Detectie van mazen in testgegevens
  • Verbeterde softwareprogramma kwaliteit
  • Eliminatie van dubbelzinnigheid van codes

Nadelen van mutatietesten zijn onder meer:

  • Moeilijke implementatie van complexe mutaties
  • Duur en tijdrovend
  • Vereist bekwame testers met programmeerkennis

Wat is mutatietesten? - definitie van techopedia