当前位置: X-MOL 学术Inf. Softw. Technol. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
An experimental and practical study on the equivalent mutant connection: An evolutionary approach
Information and Software Technology ( IF 3.8 ) Pub Date : 2020-04-27 , DOI: 10.1016/j.infsof.2020.106317
Pedro Delgado-Pérez , Francisco Chicano

Context

Mutation testing is considered to be a powerful approach to assess and improve the quality of test suites. However, this technique is expensive mainly because some mutants are semantically equivalent to the original program; in general, equivalent mutants require manual revision to differentiate them from useful ones, which is known as the Equivalent Mutant Problem (EMP).

Objective

In the past, several authors have proposed different techniques to individually identify certain equivalent mutants, with notable advances in the last years. In our work, by contrast, we address the EMP from a global perspective. Namely, we wonder the extent to which equivalent mutants are connected (i.e., whether they share mutation operators and code areas) as well as the extent to which the knowledge of that connection can benefit the mutant selection process. Such a study could allow going beyond the implicit limit in the traditional individual detection of equivalent mutants.

Method

We use an evolutionary algorithm to select the mutants, an approach called Evolutionary Mutation Testing (EMT). We propose a new derived version, Equivalence-Aware EMT (EA-EMT), which penalizes the fitness of known equivalent mutants so that they do not transfer their features to the next generations of mutants.

Results

In our experiments applying EMT to well-known C++ programs, we found that (i) equivalent mutants often originate from other equivalent mutants (over 60% on average); (ii) EA-EMT’s approach of penalizing known equivalent mutants provides better results than the original EMT in most of the cases (notably, the more equivalent mutants are detected, the better); and (iii) we can combine EA-EMT with Trivial Compiler Equivalence as a way to automatically identify equivalent mutants in a real situation, reaching a more stable version of EMT.

Conclusions

This novel approach opens the way for improvement in other related areas that deal with equivalent versions.



中文翻译:

等效突变连接的实验和实践研究:进化方法

语境

变异测试被认为是评估和改进测试套件质量的强大方法。但是,此技术昂贵,主要是因为某些突变体在语义上与原始程序等效;通常,等效突变体需要手动修订以将其与有用的突变体区分开,这称为等效突变体问题(EMP)。

目的

过去,几位作者提出了不同的技术来单独识别某些等效的突变体,最近几年取得了显着进展。相比之下,在我们的工作中,我们从全球角度解决了环境管理计划。即,我们想知道同等突变体的连接程度(即它们是否共享突变操纵子和编码区),以及该连接的知识可以使突变体选择过程受益的程度。这样的研究可以超越等效突变体的传统个体检测中的隐含极限。

方法

我们使用进化算法选择突变体,该方法称为进化突变测试(EMT)。我们提出了一个新的派生版本,等效感知EMT(EA-EMT),它惩罚了已知等效突变体的适用性,因此它们不会将其功能转移给下一代突变体。

结果

在将EMT应用于知名C ++程序的实验中,我们发现(i)等效突变体通常源自其他等效突变体(平均超过60%);(ii)在大多数情况下,EA-EMT惩罚已知的等效突变体的方法比原始的EMT提供更好的结果(值得注意的是,检测到的等效突变体越多越好);(iii)我们可以将EA-EMT与琐碎的编译器等效项结合起来,以自动识别真实情况下的等效突变体,从而获得更稳定的EMT版本。

结论

这种新颖的方法为改进其他处理等效版本的相关领域开辟了道路。

更新日期:2020-04-27
down
wechat
bug