• Refine Query
  • Source
  • Publication year
  • to
  • Language
  • 1
  • Tagged with
  • 1
  • 1
  • 1
  • 1
  • 1
  • 1
  • 1
  • 1
  • 1
  • 1
  • 1
  • 1
  • 1
  • About
  • The Global ETD Search service is a free service for researchers to find electronic theses and dissertations. This service is provided by the Networked Digital Library of Theses and Dissertations.
    Our metadata is collected from universities around the world. If you manage a university/consortium/country archive and want to be added, details can be found on the NDLTD website.
1

Mutation testing : the perfect set of mutation operators / Mutationstestning : den perfekta mängden av mutationsoperatorer

Falk, Jonathan January 2024 (has links)
While mutation testing is an effective fault-based testing technique, it has its challenges such as being computationally expensive and requiring a large amount of effort to review surviving mutants. These problems have resulted in mutation testing mostly being restricted to academic research and not as widely adopted in the industry. In the academic context, the focus has been on maximizing the mutation score and while a high mutation score might increase the quality of the software, it is not feasible to kill all the mutants. Moreover, all mutants are not as equally important, and some can not or should not be killed. Instead, the focus should be shifted to prioritizing the productive mutants, those that further improve the test suite or the source code. This thesis investigated if some mutation operators are more suitable for certain types of software by using selective mutation. The mutation operators were evaluated based on their ability to generate productive mutants. Moreover, the mutation operators were analyzed to identify how they could be improved to reduce the number of unproductive mutants generated by them. Dextool Mutate was used to conduct mutation testing on four open-source C/C++ software that were all different types of software. It was concluded that some mutation operators are more suitable for certain types of software resulting in the proposal of a set of mutation operators for each software type. Moreover, various improvements for the mutation operators were identified that reduce the number of unproductive mutants generated. Lastly, it may be helpful to customize the implementation of mutation operators for each type of software and some software types may require additional specialized mutation operators.

Page generated in 0.0661 seconds