paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Heterogeneous Testing for Coverage Profilers Empowered with Debugging Support

借助调试支持的覆盖率剖析器异构测试
FSE Proceedings of the 31st ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering2023匹配度 2/10 · 该论文关注覆盖率剖析器的测试与缺陷检测,属于软件测试/动态分析方向,既不涉及 LLM/Agentic 程序,也不涉及静态分析、浮点程序分析或贝叶斯程序分析。虽然其“异构测试”有工程价值,但与用户当前研究画像的核心问题交叉很少。引用 5 inbox
Yibiao Yang, Maolin Sun, Yang Wang, Qingyang Li, Ming Wen, Yuming Zhou
crossref: 2026-09-12dblp: 2026-09-12

AI 速览

一句话:提出 Decov,以调试器的逐行命中计数作为异构信息源,构造异构关系来检测覆盖率剖析器的缺陷。

代码覆盖率被广泛用于各类软件工程任务,因此覆盖率剖析器本身的正确性至关重要。现有验证技术(差分测试、蜕变测试)依赖同质来源,即不同剖析器之间或剖析器自身的比较,存在局限。本文提出 Decov:以调试器作为异构信息源,利用调试器在调试模式下监控的每行命中次数,与覆盖率剖析器记录的每行执行次数应当一致且无冲突这一洞察,构造多条异构关系来暴露剖析器缺陷。作者在广泛使用的 Gcov 与 LLVM-cov 上进行实验,共提交 21 个新缺陷报告,其中 19 个被开发者直接确认,5 个已在最新 trunk 版本中修复,表明 Decov 是一种简单有效且与现有技术互补的剖析器验证方法。

问题
覆盖率剖析器被广泛使用,但其自身正确性的验证手段(差分测试、蜕变测试)主要依赖同质信息源,难以发现某些类型的缺陷。
方法
Decov 将调试器监控的逐行命中次数作为异构信息源,基于“剖析器记录的执行次数应与调试器观察到的命中次数一致”这一性质构造多条异构关系来检测剖析器错误。
评估
在 Gcov 和 LLVM-cov 两个广泛使用的覆盖率剖析器上开展实验,提交 21 个新缺陷报告,其中 19 个被开发者直接确认,5 个已在最新 trunk 版本中修复。
原文摘要(Abstract)

Ensuring the correctness of code coverage profilers is crucial, given the widespread adoption of code coverage for various software engineering tasks. Existing validation techniques, such as differential testing and metamorphic testing, have shown effectiveness in uncovering bugs in coverage profilers. However, these techniques have limitations as they primarily rely on homogeneous sources, i.e., different coverage profilers or the profilers themselves, for validation. In this paper, we propose Decov, a novel heterogeneous testing technique, to validate coverage profilers using the information provided by debuggers as a heterogeneous source. Coverage profilers record execution counts for each source line in the program, while debuggers monitor hit counts for each source line when running the program in debug mode. Our key insight is that the execution counts obtained from coverage profilers should align with the hit counts monitored by debuggers, without conflicts. Decov constructs multiple heterogeneous relations and utilizes them to uncover bugs in coverage profilers. Through experiments on Gcov and LLVM-cov, two widely used code coverage profilers, we discovered 21 new bug reports, with 19 of them directly confirmed by developers. Notably, developers have resolved 5 bugs in the latest trunk version. Decov serves as a simple yet effective coverage profiler validator and offers a complementary approach to existing techniques.

链接与引用

DOI 原文 · PDF(开放获取) · DBLP

BibTeX
@inproceedings{YangSWL0Z23,
  title = {Heterogeneous Testing for Coverage Profilers Empowered with Debugging Support},
  author = {Yibiao Yang and Maolin Sun and Yang Wang and Qingyang Li and Ming Wen and Yuming Zhou},
  booktitle = {FSE},
  year = {2023},
  doi = {10.1145/3611643.3616340}
}