中文

用于解决软件产品线中优先成对测试数据生成问题的 CMSA 算法

人工智能 2024-02-08 v1 软件工程

摘要

在软件产品线(SPL)中,由于可能存在大量有效的特征组合,测试该家族的所有产品可能很困难甚至不可能。因此,我们希望找到产品家族的一个最小子集,使我们能够测试所有这些可能的组合(成对)。此外,当测试单个产品需要耗费大量精力时,最好先测试由一组优先特征组成的产品。此问题被称为优先成对测试数据生成问题。针对该问题基于整数线性规划的最先进算法对于中小型实例足够快。然而,由于候选解数量的指数级增长,存在一些对于这些算法而言在合理时间内计算量过大的真实实例。此外,这些启发式算法并不总是能引导我们找到最佳解。在这项工作中,我们提出了一种基于名为构造、合并、求解与适应的混合元启发式算法的新方法。我们将此数学启发式算法与四种算法进行了比较:基于整数线性规划的混合算法(HILP)、基于整数非线性规划的混合算法(HINLP)、并行优先遗传求解器(PPGS)以及名为 prioritized-ICPL 的贪心算法。分析表明,在大多数实例和大多数加权覆盖水平上,CMSA 产生了在统计上显著质量更好的解,尽管它需要更多的执行时间。

关键词

引用

@article{arxiv.2402.04597,
  title  = {CMSA algorithm for solving the prioritized pairwise test data generation problem in software product lines},
  author = {Javier Ferrer and Francisco Chicano and José Antonio Ortega Toro},
  journal= {arXiv preprint arXiv:2402.04597},
  year   = {2024}
}

备注

Preprint of the submitted version of the article in Journal of Heuristics