通过实时理解复现步骤增强移动应用缺陷报告
软件工程
2022-03-24 v1
摘要
开发者从用户处接收软件现场失效反馈的主要机制之一是通过缺陷报告。遗憾的是,由于撰写包含复现步骤(S2Rs)等关键信息所需付出的努力,人工编写的缺陷报告质量参差不齐。尽管报告者面临困难,现有缺陷报告系统中极少有尝试为用户提供自动化辅助以撰写易读且便于复现的缺陷报告。为满足主动式缺陷报告系统积极协助用户捕获关键信息的需要,我们提出一种称为EBug的新型缺陷报告方法。EBug通过分析报告者实时输入的自然语言信息,并将其与通过静态与动态程序分析组合提取的信息相链接,来协助报告者为移动应用撰写S2Rs。在报告者撰写S2Rs时,EBug能够利用基于真实应用使用数据训练的预测模型自动建议潜在的后续步骤。为评估EBug,我们基于来自个真实应用的20个失效进行了两项用户研究。实证研究涉及十名参与者各提交十份缺陷报告,以及十名开发者复现所提交的缺陷报告。研究发现,与作为基线的SOTA缺陷报告系统相比,报告者使用EBug构建缺陷报告的速度快31倍。EBug生成的报告相对于基线生成的报告也具有更高的可复现性。此外,我们将EBug的预测模型与其他预测建模方法比较,发现总体而言本方法的预测模型优于基线方法。我们的结果令人鼓舞,展示了主动辅助式缺陷报告系统的潜在益处。
引用
@article{arxiv.2203.12093,
title = {Enhancing Mobile App Bug Reporting via Real-time Understanding of Reproduction Steps},
author = {Mattia Fazzini and Kevin Moran and Carlos Bernal Cardenas and Tyler Wendland and Alessandro Orso and Denys Poshyvanyk},
journal= {arXiv preprint arXiv:2203.12093},
year = {2022}
}