一句话:通过对12000余个开源Android应用与148名开发者的实证研究,揭示测试自动化采用率低但热门项目更倾向采用等规律。
移动应用自动化测试近年备受关注,但开发者社区的测试自动化文化尚缺乏大规模实证理解。本文系统分析了GitHub上超过350万个仓库,筛选出12000多个非平凡的真实Android应用,考察其测试自动化采用率、开发者的自动化测试工作习惯,以及采用测试自动化与项目热度之间的相关性;随后又调查了148名专业开发者以解释观察结果。研究发现:仅8%的移动应用项目采用自动化测试实践;开发者在不同项目中倾向于保持相同的测试自动化习惯;在GitHub贡献者、star和fork数量上更热门的项目更可能采用测试自动化。该研究揭示了当前实践并指出了未来研究方向。
Automated testing of mobile apps has received significant attention in recent years from researchers and practitioners alike. In this paper, we report on the largest empirical study to date, aimed at understanding the test automation culture prevalent among mobile app developers. We systematically examined more than 3.5 million repositories on GitHub and identified more than 12, 000 non-trivial and real-world Android apps. We then analyzed these non-trivial apps to investigate (1) the prevalence of adoption of test automation; (2) working habits of mobile app developers in regards to automated testing; and (3) the correlation between the adoption of test automation and the popularity of projects. Among others, we found that (1) only 8% of the mobile app development projects leverage automated testing practices; (2) developers tend to follow the same test automation practices across projects; and (3) popular projects, measured in terms of the number of contributors, stars, and forks on GitHub, are more likely to adopt test automation practices. To understand the rationale behind our observations, we further conducted a survey with 148 professional and experienced developers contributing to the subject apps. Our findings shed light on the current practices and future research directions pertaining to test automation for mobile app development.