Abstract [eng] |
Mutation testing is called white-box testing method, which uses the criterion of mutation adequacy. The mutation adequacy score is described as the ratio of killed mutants to non-equivalent code. Mutation testing has a problem of detecting equivalent mutants, which is considered unsolvable. Therefore, various methods, including neural networks, are used to detect equivalent mutants, providing an approximate result. The problem of detecting code clones is often addressed in literature, the purpose is find pairs of code clones. The problem of code clone detection is classified into several main groups of methods: textual methods, lexical methods, tree-based methods, metric-based methods, semantic methods, and hybrid methods. In this work, a tree-based method was chosen to be examined in combination with a metric-based method. These models are also suitable for the task of detecting equivalent mutants. The goal of this work is to create a prototype of mutation testing using a combined model for detecting equivalent mutants. A dataset of mutants was created to train the models, which is the largest publicly available dataset of mutants and the only one that examines codes at the method level. A combination of models was designed in this work, marking code pairs as equivalent if at least one of the models identified them as such. The combined model was applied to the mutation testing process and showed an improvement in mutation adequacy score. Genetic algorithm applied to mutation testing resulted in a more accurate mutation score with a greater number of identified non-equivalent code. |