一句话:提出 BUGSC++:含 209 个 C/C++ 真实缺陷、高可用且可复现的调试与修复基准。
随着软件系统日益庞大复杂,调试在维护中占据越来越多时间,自动化调试与修复技术因此受到关注。这些技术的开发与评估依赖缺陷基准,但现有基准因缺陷来源和自身可用性等问题,只有少数被广泛采用,可能导致研究图景偏置。本文提出 BUGSC++,一个包含从 22 个开源 C/C++ 项目收集的 209 个真实缺陷的基准。为提高可用性,它提供与广泛使用的 Defects4J 类似的用户界面;为保证可复现性,它将每个含缺陷程序封装在 Docker 容器中。作者希望该高可用真实世界缺陷基准能促进 C/C++ 调试与修复研究。
As software systems grow larger and more complex, debugging takes up an increasingly significant portion of developers' time and efforts during software maintenance. To aid software engineers in debugging, many automated debugging and repair techniques have been proposed. Both the development and evaluation of these automated techniques depend on benchmarks of bugs. While many different defect benchmarks have been developed, only a few benchmarks are widely used due to the origin of the collected bugs as well as the usability of the benchmarks themselves, risking a biased research landscape. This paper presents BUGSC++, a new benchmark that contains 209 real-world bugs collected from 22 open-source C/C++ projects. BugsC++ aims to provide high usability by providing a similar user interface to the widely used Defects4J. Further, BugsC++ ensures the replicability of the bugs in its collection by encapsulating each buggy program in a Docker container. By providing a highly usable real-world defect benchmark for C/C++, we hope to promote debugging research for C/C++.