当前位置: X-MOL 学术Software Qual. J. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
Evaluation of alternative design choices for evolutionary mutation testing by means of automated configuration
Software Quality Journal ( IF 1.9 ) Pub Date : 2020-11-06 , DOI: 10.1007/s11219-020-09530-1
Pedro Delgado-Pérez , Francisco Chicano

Mutation testing is a well-established but costly technique to assess and improve the fault detection ability of test suites. This technique consists of introducing subtle changes in the code of a program, which are expected to be detected by the designed test cases. Among the strategies conceived to reduce its cost, evolutionary mutation testing (EMT) has been revealed as a promising approach to select a subset of the whole set of mutants based on a genetic algorithm (GA). However, like any other metaheuristic approach, EMT’s execution depends on a set of parameters (both classical of GAs and context-specific ones), so different configurations can greatly vary its performance. Currently, it is difficult to clarify what are the best values for those parameters by applying manual parameter tuning and whether new design choices could improve its effectiveness with other combinations of values. The experience carried out in this paper applying iterated racing, a well-known automated configuration algorithm, reveals that EMT’s performance has been undervalued in previous studies; the new configuration found by iterated racing was able to enhance EMT’s results in all C++ object-oriented programs used in the experiments. This study also confirms alternative design choices as convenient options to improve EMT in this context, namely, detecting and penalizing equivalent mutants by means of Trivial Compiler Equivalence, and learning which mutation operators produced live mutants in the past generations.

中文翻译:

通过自动配置评估进化突变测试的替代设计选择

变异测试是一种成熟但成本高昂的技术,用于评估和提高测试套件的故障检测能力。这种技术包括在程序代码中引入细微的变化,这些变化预计会被设计的测试用例检测到。在旨在降低其成本的策略中,进化突变测试 (EMT) 已被揭示为一种有前途的方法,可以基于遗传算法 (GA) 选择整个突变体集的一个子集。然而,与任何其他元启发式方法一样,EMT 的执行取决于一组参数(GA 的经典参数和特定于上下文的参数),因此不同的配置可以极大地改变其性能。现在,很难通过应用手动参数调整来阐明这些参数的最佳值是什么,以及新的设计选择是否可以通过其他值组合来提高其有效性。本文中应用迭代竞速(一种著名的自动配置算法)的经验表明,EMT 的性能在以前的研究中被低估了;迭代赛车发现的新配置能够在实验中使用的所有 C++ 面向对象程序中增强 EMT 的结果。该研究还确认了替代设计选择是在这种情况下改善 EMT 的便捷选择,即通过平凡编译器等效性检测和惩罚等效突变体,并了解哪些突变算子在过去的几代中产生了活突变体。
更新日期:2020-11-06
down
wechat
bug