paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Hybrid Regression Test Selection by Integrating File and Method Dependences

通过整合文件与方法依赖的混合回归测试选择
ASE Proceedings of the 39th IEEE/ACM International Conference on Automated Software Engineering2024匹配度 2/10 · 论文属于程序分析与回归测试选择,虽然涉及静态方法调用图与动态分析结合,但未涉及用户核心关注的 PL×AI/LLM、Agentic 程序、浮点程序分析或贝叶斯程序分析。引用 6 inbox
Guofeng Zhang, Luyao Liu, Zhenbang Chen, Ji Wang
crossref: 2026-09-12dblp: 2026-09-12

AI 速览

一句话:提出混合回归测试选择工具JcgEks,整合静态方法调用图与动态文件级分析,在保证安全性的同时提升精度并减少测试时间。

回归测试选择(RTS)通过仅运行受代码变更影响的测试用例来降低回归测试成本。单一粒度分析存在瓶颈,现有混合粒度RTS技术协同不佳,且静态方法级分析难以处理外部库回调,导致漏选测试用例。为此,提出混合RTS方法JcgEks,在Ekstazi基础上集成静态方法调用图,结合动态与静态分析优势,将精度从类级提升到方法级,安全处理外部库调用;同时提出安全性度量并实现检查工具Checker。在20个开源项目的1000个修订版本上评估,与FineEkstazi相比,JcgEks端到端测试时间和所选测试类数量相当,而FineEkstazi会漏选;与Ekstazi相比,JcgEks端到端时间降低29%,测试类数量减少30.9%,且保证安全性。

问题
现有回归测试选择技术因单一粒度分析瓶颈而协同困难,且静态方法级分析在处理外部库回调时容易漏选受影响的测试用例,如何在保证安全性的前提下提升RTS的精度和效率。
方法
提出JcgEks,通过集成静态方法调用图增强Ekstazi,结合动态和静态分析,将精度从类级提升至方法级,并安全处理外部库调用;同时提出安全性度量并实现Checker工具。
评估
在20个开源项目的1000个修订版本上与四个基线工具比较;与FineEkstazi相比性能相当且更安全,与Ekstazi相比端到端时间减少29%、测试类减少30.9%。
原文摘要(Abstract)

Regression Testing Selection (RTS) reduces the cost of regression testing by only running test cases affected by code changes. Due to the bottleneck of single granularity analyses, the latest RTS techniques tend to analyze with mixed granularities. However, a better synergy of the existing RTS techniques is still challenging. Besides, we have found that once existing RTS approaches use static method-level analysis, handling external library callbacks is difficult, leading to the missed selection of affected test cases.To address these difficulties, we introduce a new hybrid RTS approach, JcgEks, which enhances Ekstazi by integrating static method call graphs. It combines the advantages of dynamic and static analyses, improving precision from class-level to method-level and reducing end-to-end time without sacrificing safety. More importantly, JcgEks safely handles external library calls. Besides, we propose a new safety metric and implement the checking tool called Checker to evaluate the safety of RTS tools. We compared JcgEks with four baseline RTS tools in 1000 revisions across 20 open-source projects. The experimental results demonstrate that, compared with the state-of-the-art RTS tool FineEkstazi, JcgEks had the same level of end-to-end testing time and number of selected test classes, while FineEkstazi was confirmed to miss test classes in the experiment. Compared with Ekstazi, JcgEks has reduced end-to-end time by 29% and the number of test classes by 30.9% while ensuring safety.CCS CONCEPTS• Software and its engineering → Software testing and debugging.

链接与引用

DOI 原文 · DBLP

BibTeX
@inproceedings{0005LC024,
  title = {Hybrid Regression Test Selection by Integrating File and Method Dependences},
  author = {Guofeng Zhang and Luyao Liu and Zhenbang Chen and Ji Wang},
  booktitle = {ASE},
  year = {2024},
  doi = {10.1145/3691620.3695525}
}