并行程序测试:基于分组的多路径覆盖测试数据进化生成

需积分: 10 1 下载量 37 浏览量 更新于2024-07-17 收藏 270KB PDF 举报
"这篇论文是关于并行程序的多路径覆盖测试数据的进化生成方法,由田甜和巩敦卫撰写。尽管并行软件测试在软件工程领域受到重视,但生成能覆盖并行软件多路径的测试数据仍然是一个挑战。论文提出了一种基于分组的测试数据进化生成策略,通过考虑进程数、计算资源和路径相似度来划分目标路径。利用群并行遗传算法解决多路径覆盖测试数据生成问题,以一次性生成覆盖所有目标路径的测试数据。实验结果显示,该方法减少了个体评价次数和耗时,同时保持了高的路径覆盖率。关键词包括软件测试、并行程序、路径覆盖、测试数据和遗传算法。" 论文详细内容: 在并行软件测试中,多路径覆盖是一种重要的测试策略,因为它可以更全面地揭露潜在的错误。然而,由于并行程序的复杂性和并发性质,生成满足多路径覆盖的测试数据是一项艰巨的任务。田甜和巩敦卫的研究针对这一挑战,提出了一种创新的方法,即基于分组的测试数据进化生成。 首先,该方法根据并行程序中的进程数量、可用计算资源以及不同路径之间的相似度,将目标路径划分为多个组。这样的分组策略旨在确保每个组内的路径相似度较高,而不同组间的路径差异较小。这种策略有助于减少生成测试数据的复杂性,因为相似路径可能只需要少量的调整就能同时覆盖。 接下来,研究人员引入了多路径覆盖测试数据生成的数学模型,并采用群并行遗传算法来求解。遗传算法是一种优化技术,模拟自然选择和遗传过程来寻找解决方案。在并行环境下,这种方法可以同时处理多个解,加速了搜索过程。通过一次运行遗传算法,该方法能够生成覆盖所有目标路径的测试数据,显著提高了效率。 实验部分,研究者在四个基准并行程序上应用了该方法,并与现有的测试数据生成技术进行了对比。实验结果表明,所提出的方法在保持高路径覆盖率的同时,显著降低了个体评价次数和执行时间,这证明了其在实际应用中的优势和有效性。 这篇论文对并行程序的测试领域做出了重要贡献,提供了一个有效且高效的测试数据生成策略,对于提高并行软件的质量和可靠性有着积极的意义。通过将路径分组和群并行遗传算法结合,它为并行软件测试提供了一种新的解决思路,对于软件工程领域的实践和未来研究都有着重要的参考价值。