项目名称: 面向Bug报告的软件故障重现方法研究
项目编号: No.61502345
项目类型: 青年科学基金项目
立项/批准年度: 2016
项目学科: 自动化技术、计算机技术
项目作者: 玄跻峰
作者单位: 武汉大学
项目金额: 21万元
中文摘要: Bug是现代软件开发中不可避免的产物。软件故障重现是定位并修复bug的重要阶段。故障重现旨在生成能够执行特定程序路径的测试用例,以激发与bug报告中相同的运行时故障信息。基于故障重现,开发者能够理解bug的根本原因并最终修复bug。本研究回顾了该领域的相关工作并归纳了一系列研究问题:(1) 从测试用例生成的层面,如何更好的构造测试用例,以激发故障发生的场景;(2) 从bug报告分析的层面,如何借助bug报告内容重现故障;(3) 从历史故障挖掘的层面,如何学习已有的故障重现的结果以指导新提交bug的故障重现。基于经验软件工程的相关工作,我们提出了系统的研究路线和实验方案。本课题的实施将为面向bug报告的故障重现方法研究提供有效的解决方案和实际应用基础。
中文关键词: Bug报告;故障重现;软件仓库挖掘;基于搜索的软件工程;测试用例增强
英文摘要: Bugs are inevitable in modern software development. Software fault reproduction is an important phase during the process of localizing and fixing bugs. Fault reproduction aims at generating test cases to cover specific execution paths that trigger the same runtime trace as recorded in bug reports. Based on fault reproduction, developers can understand root causes of bugs and further fix the bugs. In this proposal, we review existing work and summarize a series of research questions as follows: (1) from the perspective of test case generation, how to better construct test cases to trigger the faulty scenario; (2) from the perspective of bug report analysis, how to leverage the content of bug reports to reproduce the faults; (3) from the perspective of historical fault mining, how to learn from existing fault reproduction results to guide the solution to new submitted bugs. Based on our work in empirical software engineering, we systematically propose a research routine and an experimental scheme. This proposal will provide effective solutions and support real-world applications for bug report oriented fault reproduction.
英文关键词: Bug Report;Fault Reproduction;Mining Software Repository;Search Based Software Engineering;Test Case Augmentation