首页> 外文会议>IEEE International Symposium on Software Reliability Engineering >Evaluating the Effects of Compiler Optimizations on Mutation Testing at the Compiler IR Level
【24h】

Evaluating the Effects of Compiler Optimizations on Mutation Testing at the Compiler IR Level

机译:在编译器IR级别评估编译器优化对变异测试的影响

获取原文

摘要

Software testing is one of the most widely used approaches for improving software reliability. The effectiveness of testing depends to a large extent on the quality of test suites. Researchers have developed various techniques to evaluate the quality of test suites. Of these techniques, mutation testing is generally considered to be the most advanced but also expensive. A key result of applying mutation testing to a given test suite is the mutation score representing the percentage of mutants killed by the test suite. Ideally the mutation score is computed ignoring the mutants that are semantically equivalent to the original code under test or to one another. In this paper, we investigate a new perspective on mutation testing: evaluating how standard compiler optimizations affect the cost and results of mutation testing performed at the compiler intermediate representation. Our study targets LLVM, a popular compiler infrastructure that supports multiple source and target languages. Our evaluation on 18 Coreutils programs discovers several interesting relations between the numbers of mutants (including the numbers on equivalent and duplicated mutants) and mutation scores on unoptimized and optimized programs.
机译:软件测试是提高软件可靠性的最广泛使用的方法之一。测试的有效性在很大程度上取决于测试套件的质量。研究人员开发了各种技术来评估测试套件的质量。在这些技术中,通常认为突变测试是最先进的,但也很昂贵。将突变测试应用于给定测试套件的一个关键结果是突变得分,代表了被测试套件杀死的突变体的百分比。理想情况下,忽略分数在语义上等同于被测试的原始代码或彼此等效的突变,就可以计算出突变得分。在本文中,我们研究了突变测试的新观点:评估标准的编译器优化如何影响在编译器中间表示上执行的突变测试的成本和结果。我们的研究针对LLVM,LLVM是一种流行的编译器基础结构,支持多种源语言和目标语言。我们对18个Coreutils程序的评估发现了突变体数量(包括等效和重复突变体上的数量)与未优化和优化程序上的突变得分之间的一些有趣关系。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号