首页> 外文会议>IEEE VLSI Test Symposium >A New Method for Software Test Data Generation Inspired by D-algorithm
【24h】

A New Method for Software Test Data Generation Inspired by D-algorithm

机译:一种由D算法启发的软件测试数据生成的新方法

获取原文

摘要

Test generation for digital hardware is highly automated, scalable (in practice), and provides high test quality. In contrast, current software automatic test data generation approaches suffer from low test quality or high complexity. While mutation-oriented constraint-based test data generation for software was proposed to generate high quality test data for real program bugs, all existing approaches require symbolic analysis for the whole program, and hence are not scalable even for unit testing, i.e., testing the lowest-level software modules. We propose a new method inspired by hardware D-algorithm and divide and conquer for software test data generation. To reduce runtime complexity and improve scalability, we combine global structural analysis and a sequence of small reusable symbolic analyses of parts of the program, instead of symbolically executing each mutated version of the entire program. We also propose a multi-pass test generation system to further reduce runtime complexity and compact test data. We compare our tools with one of the best software test generation tools (EvoSuite[20], which won the SBST 2017 tool competition) and demonstrate that our approach generates higher quality unit tests in a scalable manner and provides a compact set of tests.
机译:数字硬件测试生成高度自动化,可扩展(在实践中),并提供高测试质量。相比之下,当前的软件自动测试数据生成方法遭受低测试质量或高复杂性。虽然对软件的突变基于约束的测试数据生成是为了生成真实程序错误的高质量测试数据,但所有现有方法都需要整个程序的符号分析,因此即使对于单位测试,即可,也不可扩展,即,测试最低级软件模块。我们提出了一种由硬件D算法启发的新方法,并划分和征服软件测试数据生成。为了减少运行时复杂性并提高可扩展性,我们组合了全局结构分析和一系列程序的小型可重复使用符号分析,而不是象征性地执行整个程序的每个突变版本。我们还提出了一种多通测试生成系统,以进一步降低运行时复杂性和紧凑的测试数据。我们将我们的工具与最好的软件测试生成工具(Evosuite [20]赢得SBST 2017工具竞赛)进行比较,并证明我们的方法以可扩展的方式产生更高质量的单元测试,并提供一组紧凑的测试。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号