ReCDroid+: Automated End-to-End Crash Reproduction from Bug Reports for Android Apps

ReCDroid+: Automated End-to-End Crash Reproduction from Bug Reports for Android Apps
复制标题

DOI:
10.1145/3488244
复制
发表时间:
2022-03
期刊:
ACM Transactions on Software Engineering and Methodology (TOSEM)
影响因子:
--
通讯作者:
Yu Zhao;Ting Su;Y. Liu;Wei Zheng;Xiaoxue Wu;Ramakanth Kavuluru;William G. J. Halfond;Tingting Yu
Yu Zhao;Ting Su;Y. Liu;Wei Zheng;Xiaoxue Wu;Ramakanth Kavuluru;William G. J. Halfond;Tingting Yu
中科院分区:
其他
文献类型:
--
作者:
Yu Zhao;Ting Su;Y. Liu;Wei Zheng;Xiaoxue Wu;Ramakanth Kavuluru;William G. J. Halfond;Tingting Yu

文献摘要

被引文献

相似文献

移动设备的巨大需求对移动应用程序(应用程序)的质量引起了重大关注。开发人员在很大程度上依靠问题跟踪系统中的错误报告来复制故障(例如崩溃)。但是,崩溃复制的过程通常是由开发人员手动完成的,从而使错误效率低下,尤其是考虑到错误报告通常是用自然语言编写的。为了提高开发人员在解决错误报告中的生产率,在本文中,我们介绍了一种称为RecDroid+的新颖方法,该方法可以自动从Android应用程序的错误报告中复制崩溃。 RecDroid+结合了自然语言处理(NLP),深度学习和动态GUI探索,以合成事件序列,以重现报告的崩溃。我们已经在37个Android应用程序的66个原始错误报告中评估了Recdroid+。结果表明,从手动复制的错误报告的文本描述中,Recdroid+成功地重现了42次崩溃(成功率为63.6%)。一项涉及12名参与者的用户研究表明,Recdroid+可以在解决崩溃错误报告时提高开发人员的生产率。
The large demand of mobile devices creates significant concerns about the quality of mobile applications (apps). Developers heavily rely on bug reports in issue tracking systems to reproduce failures (e.g., crashes). However, the process of crash reproduction is often manually done by developers, making the resolution of bugs inefficient, especially given that bug reports are often written in natural language. To improve the productivity of developers in resolving bug reports, in this paper, we introduce a novel approach, called ReCDroid+, that can automatically reproduce crashes from bug reports for Android apps. ReCDroid+ uses a combination of natural language processing (NLP), deep learning, and dynamic GUI exploration to synthesize event sequences with the goal of reproducing the reported crash. We have evaluated ReCDroid+ on 66 original bug reports from 37 Android apps. The results show that ReCDroid+ successfully reproduced 42 crashes (63.6% success rate) directly from the textual description of the manually reproduced bug reports. A user study involving 12 participants demonstrates that ReCDroid+ can improve the productivity of developers when resolving crash bug reports.