一句话:提出从 bug 报告中提取真实程序来丰富编译器测试,以克服随机或变异生成程序难以理解缺陷影响的问题。
编译器测试常通过自动生成测试程序来发现缺陷。现有主流方法分为基于随机的生成和基于变异的生成,二者主要产生随机代码。然而,使用真实程序进行测试更有益:既能更容易理解编译器缺陷的实际影响,也使得同时使用有效代码和无效代码变得合理。问题在于,代码仓库中的大多数真实程序对触发编译器缺陷并不有效,部分原因是这些程序在提交前已被编译过。本文因此提出利用 bug 报告中的真实程序来丰富编译器测试,以弥补上述不足。摘要未报告具体实验设置或发现结果。
Researchers have proposed various approaches to generate test programs. The state-of-the-art approaches can be roughly divided into random-based and mutation-based approaches: random-based approaches generate random programs and mutation-based approaches mutate programs to generate more test programs. Both lines of approaches mainly generate random code, but it is more beneficial to use real programs, since it is easier to learn the impacts of compiler bugs and it becomes reasonable to use both valid and invalid code. However, most real programs from code repositories are ineffective to trigger compiler bugs, partially because they are compiled before they are submitted.
DOI 原文 ·
@inproceedings{paperbot7247,
title = {Enriching Compiler Testing with Real Program from Bug Report},
author = {Hao Zhong},
booktitle = {ASE},
year = {2022},
doi = {10.1145/3551349.3556894}
}