Approximate Transformations as Mutation Operators

Approximate Transformations as Mutation Operators
复制标题

DOI:
10.1109/icst.2018.00036
复制
发表时间:
2018-04
期刊:
2018 IEEE 11th International Conference on Software Testing, Verification and Validation (ICST)
影响因子:
--
通讯作者:
Farah Hariri;A. Shi;Owolabi Legunsen;Miloš Gligorić;S. Khurshid;Sasa Misailovic
Farah Hariri;A. Shi;Owolabi Legunsen;Miloš Gligorić;S. Khurshid;Sasa Misailovic
中科院分区:
其他
文献类型:
--
作者:
Farah Hariri;A. Shi;Owolabi Legunsen;Miloš Gligorić;S. Khurshid;Sasa Misailovic

文献摘要

被引文献

相似文献

变异测试是一种成熟的方法,用于通过使用语法改变(以及潜在的语义改变)转换(称为变异操作符)修改代码来评估测试套件质量。本文提出了近似变换作为新的变异算子,可以提供有关代码和测试的新见解。近似变换是在近似计算的新兴领域中使用的语义改变变换,但到目前为止,它们还没有被评估用于突变测试。我们发现,近似变换可以是有效的变异算子。我们比较了三个近似变换与一组传统的突变算子从文献中,九个开源的Java主题。结果表明,近似变换改变程序的行为不同于传统的变异算子。我们的分析揭示了近似突变体生存的代码模式,并显示了近似变换对于理解代码的近似性和发现坏测试的实用价值。我们提交了11个pull request来修复糟糕的测试。其中7个已经被开发商整合。
Mutation testing is a well-established approach for evaluating test-suite quality by modifying code using syntax-changing (and potentially semantics-changing) transformations, called mutation operators. This paper proposes approximate transformations as new mutation operators that can give novel insights about the code and tests. Approximate transformations are semantics-changing transformations used in the emerging area of approximate computing, but so far they were not evaluated for mutation testing. We found that approximate transformations can be effective mutation operators. We compared three approximate transformations with a set of conventional mutation operators from the literature, on nine open-source Java subjects. The results showed that approximate transformations change program behavior differently from conventional mutation operators. Our analysis uncovered code patterns in which approximate mutants survivedand showed the practical value of approximate transformations for both understanding code amenable to approximations and discovering bad tests. We submitted 11 pull requests to fix bad tests. Seven have already been integrated by the developers.