One of the key tasks related to ensuring mobile app quality is the reporting, management, and resolution of bug reports. As such, researchers have committed considerable resources toward automating various tasks of the bug management process for mobile apps, such as reproduction and triaging. However, the success of these automated approaches is largely dictated by the characteristics and properties of the bug reports they operate upon. As such, understanding mobile app bug reports is imperative to drive the continued advancement of report management techniques. While prior studies have examined high-level statistics of large sets of reports, we currently lack an in-depth investigation of how the information typically reported in mobile app issue trackers relates to the specific details generally required to reproduce the underlying failures. In this paper, we perform an in-depth analysis of 180 reproducible bug reports systematically mined from Android apps on GitHub and investigate how the information contained in the reports relates to the task of reproducing the described bugs. In our analysis, we focus on three pieces of information: the environment needed to reproduce the bug report, the steps to reproduce (S2Rs), and the observed behavior. Focusing on this information, we characterize failure types, identify the modality used to report the information, and characterize the quality of the information within the reports. We find that bugs are reported in a multi-modal fashion, the environment is not always provided, and S2Rs often contain missing or non-specific enough information. These findings carry with them important implications on automated bug reproduction techniques as well as automated bug report management approaches more generally.
翻译:与确保移动应用程序质量有关的关键任务之一是报告、管理和解决错误报告。因此,研究人员投入了大量资源,将移动应用程序的错误管理进程的各种任务自动化,例如复制和三角。然而,这些自动化方法的成功在很大程度上取决于他们操作的错误报告的特点和性质。因此,了解移动应用程序错误报告对于推动持续推进报告管理技术至关重要。虽然先前的研究已经审查了大量报告的高层次统计数据,但我们目前缺乏对移动应用程序问题追踪器中通常报告的信息如何与通常复制基本故障所需的具体细节相联系的深入调查。在本文中,我们对180份可复制的错误报告进行深入分析,从GitHub上的安卓应用程序系统提取,并调查报告中所含信息与重新生成报告错误的任务有何关系。在我们的分析中,我们侧重于三部分信息:复制错误报告所需的环境、复制步骤(S2Rs)以及观察到的行为。在本文中,我们对180份可复制的错误报告的错误报告进行了深入分析,我们总是将错误报告与非错误报告的方式联系起来,我们总是将错误报告与错误报告中的错误分析方式联系起来,我们总是将错误报告与错误报告分为多种。