Nemo: Multi-criteria Test-Suite Minimization with Integer Nonlinear Programming

Nemo: Multi-criteria Test-Suite Minimization with Integer Nonlinear Programming
复制标题

Nemo:使用整数非线性规划的多标准测试套件最小化

DOI:
--
复制
发表时间:
2018
期刊:
International Conference on Software Engineering
影响因子:
--
通讯作者:
S. Malek
S. Malek
中科院分区:
--
文献类型:
--
作者:
Jun;Reyhaneh Jabbarvand;Joshua Garcia;S. Malek

文献摘要

被引文献

相似文献

多标准测试套件最小化旨在根据某些标准(例如代码覆盖率)从测试套件中删除冗余测试用例,同时试图根据其他标准(例如故障检测效果)来最佳地维护还原套件的能力。通过整数线性编程声称生成最佳解决方案来解决此问题的现有技术。但是,多标准测试套件最小化问题本质上是非线性的,这是因为测试案例通常在测试案例标准方面相互依赖。在本文中,我们提出了一个框架,该框架将多标准测试套件最小化问题作为整数非线性编程问题。为了最佳地解决此问题,我们可以编程性地将此非线性问题转换为线性问题,然后使用现代线性求解器解决该问题。我们已经将框架作为一种称为Nemo的工具实施,该工具支持许多现代的线性和非线性求解器。我们已经通过公开可用的数据集评估了NEMO和涉及多个标准的最小化问题,包括陈述覆盖范围,避免故障的功能和测试执行时间。实验结果表明,NEMO可用于有效地找到用于多标准测试套件最小化问题的最佳解决方案,而现代求解器的最小化最小化问题则优于次优的解决方案,就问题所考虑的标准而言,最高次求解的解决方案优于次优的解决方案。 。
Multi-criteria test-suite minimization aims to remove redundant test cases from a test suite based on some criteria such as code coverage, while trying to optimally maintain the capability of the reduced suite based on other criteria such as fault-detection effectiveness. Existing techniques addressing this problem with integer linear programming claim to produce optimal solutions. However, the multi-criteria test-suite minimization problem is inherently nonlinear, due to the fact that test cases are often dependent on each other in terms of test-case criteria. In this paper, we propose a framework that formulates the multi-criteria test-suite minimization problem as an integer nonlinear programming problem. To solve this problem optimally, we programmatically transform this nonlinear problem into a linear one and then solve the problem using modern linear solvers. We have implemented our framework as a tool, called Nemo, that supports a number of modern linear and nonlinear solvers. We have evaluated Nemo with a publicly available dataset and minimization problems involving multiple criteria including statement coverage, fault-revealing capability, and test execution time. The experimental results show that Nemo can be used to efficiently find an optimal solution for multi-criteria test-suite minimization problems with modern solvers, and the optimal solutions outperform the suboptimal ones by up to 164.29% in terms of the criteria considered in the problem.