中文

针对Android应用缺陷报告可复现性的实证研究

软件工程 2023-01-04 v1

摘要

确保移动应用质量的关键任务之一是缺陷报告的提交、管理与解决。因此,研究人员已投入大量资源用于自动化移动应用的缺陷管理流程中的各项任务,例如复现与分派。然而,这些自动化方法的成功在很大程度上取决于其所处理缺陷报告的特征与属性。因此,理解移动应用缺陷报告对于推动报告管理技术的持续进步至关重要。尽管已有研究考察了大规模报告集的高层统计特征,我们目前仍缺乏对移动应用问题跟踪器中通常报告的信息与复现底层故障一般所需的具体细节之间关系的深入调查。本文对从GitHub上Android应用系统性挖掘得到的180份可复现缺陷报告进行了深入分析,并探究了报告中所包含的信息与复现所述缺陷任务之间的关系。在我们的分析中,我们聚焦于三类信息:复现缺陷报告所需的环境、复现步骤(S2Rs)以及观察到的行为。围绕这些信息,我们刻画了故障类型,识别了报告信息所使用的模态,并刻画了报告中信息的质量。我们发现缺陷以多模态方式报告,环境并非总被提供,且S2Rs常包含缺失或不够具体的信息。这些发现对自动化缺陷复现技术以及更广义的自动化缺陷报告管理方法具有重要启示。

关键词

引用

@article{arxiv.2301.01235,
  title  = {An Empirical Investigation into the Reproduction of Bug Reports for Android Apps},
  author = {Jack Johnson and Junayed Mahmud and Tyler Wendland and Kevin Moran and Julia Rubin and Mattia Fazzini},
  journal= {arXiv preprint arXiv:2301.01235},
  year   = {2023}
}

备注

Published in the Proceedings of the 29th IEEE International Conference on Software Analysis, Evolution and Reengineering (SANER'22), Honolulu, Hawaii, March 15-18, 2022, pp. 321-332