LTM:基于语言模型的可扩展黑盒相似性测试套件最小化方法
软件工程
2024-10-02 v5
摘要
随着软件演进,测试套件往往不断增长,使得在分配的测试预算内执行所有测试用例常常不可行,尤其是对于大型软件系统。测试套件最小化(TSM)通过移除冗余测试用例来提升软件测试效率,从而减少测试时间与资源,同时保持测试套件的故障检测能力。大多数现有 TSM 方法依赖于代码覆盖率(白盒)或基于模型的特征,而这些特征测试工程师并不总是能够获得。近期已提出仅依赖测试代码(黑盒)的 TSM 方法,例如 ATM 和 FAST-R。为解决可扩展性问题,我们提出 LTM(基于语言模型的测试套件最小化,Language model-based Test suite Minimization),一种新颖的、可扩展的、基于黑盒相似性的 TSM 方法,其基于大语言模型(LLMs),也是 LLMs 在 TSM 背景下的首次应用。为支持测试代码嵌入的相似性度量,我们考察了五种预训练语言模型:CodeBERT、GraphCodeBERT、UniXcoder、StarEncoder 和 CodeLlama,并在其上计算两种相似性度量:余弦相似度(Cosine Similarity)与欧氏距离(Euclidean Distance)。我们的目标是找到不仅计算更高效,而且能更好地引导遗传算法(GA)搜索最优最小化测试套件的相似性度量,从而减少整体搜索时间。实验结果表明,LTM 的最佳配置(UniXcoder/余弦)在三个方面优于 ATM:(a) 实现略高的测试时间节省率(平均 41.72% 对比 41.02%);(b) 达到显著更高的故障检测率(平均 0.84 对比 0.81);以及最重要的,(c) 平均近五倍更快地最小化测试套件,且对更大的测试套件与系统增益更高,从而实现了高得多的可扩展性。
引用
@article{arxiv.2304.01397,
title = {LTM: Scalable and Black-box Similarity-based Test Suite Minimization based on Language Models},
author = {Rongqi Pan and Taher A. Ghaleb and Lionel Briand},
journal= {arXiv preprint arXiv:2304.01397},
year = {2024}
}