Reduzindo o custo do teste de mutação com base no conceito de arcos primitivos - Kuroishi, Pedro Henrique (Universidade Federal de São Carlos, 2021)
Context: Software testing plays an important role in quality assurance. Testing techniques and criteria help the tester to develop and assess test suites. Mutation testing is a fault-based testing criterion commonly used to evaluate the quality of test suites. However, a high computational cost to generate and execute the mutants and the existence of equivalent prevent mutation testing to be widely applied in practical situations. In this sense, it is important to propose studies to overcome such problems. Objective: This work presents an approach that combined mutation testing and the concept of primitive arcs, used in the context of control-flow testing criteria, to reduce the cost of mutation testing. Overall, the goal was to verify if the execution of a subset of mutants located on the primitive arcs of a program under testing reduces the number of mutants and maintains a high mutation score. Next, this work evaluated the relationship between minimal mutants and primitive arcs. If both hypotheses confirm, it is possible to design new testing criteria based on the results obtained. Method: This work presented an experimental study to evaluate the proposed approach. To carry out the experiment, this work considered a set of 29 programs in C already used in other studies involving mutation testing. Results: The results showed that the approach reduced the number of mutants and achieved a high mutation score. Besides, the results showed that the primitive arcs concentrated a high percentage of minimal mutants. Then, the approach was compared to random mutation. The results showed that mutation on primitive arcs was slightly better than random mutation. Finally, this work presents a set of testing criteria based on the results obtained. Conclusion: Although powerful to detect faults, mutation testing still requires some improvements to large use in industry. The proposed approach may guide further works once the results obtained showed that the combination of mutation testing and primitive arcs might be a promising alternative. Thus, a broad experimental study using industry level programs and different test suites, may bring different results and hence, bring some contribution to the community.
Reducing the cost of mutation testing based on the primitive arcs concept
Keywords: Teste de mutação; Análise de fluxo de controle; Arcos primitivos; Redução de custo; Mutantes equivalentes; Mutantes minimais; Critérios de teste; Mutation testing; Control flow-analysis; Primitive arcs; Cost reduction; Equivalent mutants; Minimal mutants; Testing criterion; CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO