[论文解读] A Systematic Literature Review of Automated Techniques for Functional GUI Testing of Mobile Applications
本篇系统文献综述评估了25项关于移动应用自动化功能GUI测试的原始研究,分析了其有效性、效率和实用性。研究发现,当前技术的有效性仅为约50%,效率低下(平均每款应用耗时超过30分钟),且仅有约50%具备实用性,这是由于有效性与效率之间存在权衡,凸显了改进模型压缩和智能输入生成的必要性。
Context. Multiple automated techniques have been proposed and developed for mobile application GUI testing aiming to improve effectiveness, efficiency, and practicality. The effectiveness, efficiency, and practicality are 3 fundamental characteristics which testing techniques are built upon, and need to be continuously improved to deliver useful solutions for researchers and practitioners, and community as a whole. Objective. In this systematic review, we attempt to provide a broad picture of existing mobile testing tools by collating and analysing their conceptual, and also performance characteristics including an estimation of effectiveness, efficiency, and practicality. Method. To achieve our objective, we specify 3 primary, and 14 secondary review questions, and conducted an analysis of 25 primary studies. We first individually analyse each primary study, and next analyse the primary studies as a whole. We developed a review protocol which defines all the details of our systematic review. Results. From effectiveness, we conclude that testing techniques which implement model-checking, symbolic execution, constraint solving, and search-based test generation approach tend to be more effective than those implementing random test generation. From efficiency, we conclude that testing techniques which implement code search-based testing approaches tend to be more efficient than those implementing GUI model-based. From practicality, we conclude that the more effective a testing technique is, the less efficient it will be. Conclusion. For effectiveness, we observe that the existing automated testing techniques are not effective enough, and currently they achieve nearly half of the desired level of effectiveness. For efficiency, we observe that current automated testing techniques are not efficient enough.
研究动机与目标
- 评估移动应用自动化功能GUI测试技术的当前状态。
- 评估现有自动化测试工具的有效性、效率和实用性。
- 识别测试生成方法中的差距,特别是输入生成和模型复杂性方面的不足。
- 通过突出输入多样性不足和模型可扩展性差等表现欠佳的领域,为未来研究提供指导。
提出的方法
- 采用预定义协议进行系统文献综述,包含3个主要研究问题和14个次要研究问题。
- 通过基于相关性和质量的严格纳入与排除标准,筛选出25项原始研究。
- 分别分析每项研究,随后进行综合分析,以评估其概念特征与性能特征。
- 使用自定义的质量评估量表评估研究质量,通过多评审者共识最大限度减少人为偏倚。
- 在有效性(例如,模型检测与随机测试)、效率(例如,代码搜索与GUI模型驱动)和实用性(实际可用性)方面对发现结果进行映射。
- 通过分析原始研究中的研究设计和结果讨论,评估对有效性的威胁。
实验结果
研究问题
- RQ1哪些自动化GUI测试技术在移动应用中最为有效,它们在测试覆盖率和故障检测方面的表现如何比较?
- RQ2现有自动化测试技术在每款应用的执行时间和资源使用方面效率如何?
- RQ3在实际应用场景中,哪些因素导致当前移动GUI测试工具具有实用性(或不实用性)?
- RQ4不同的测试生成策略(例如,符号执行、随机输入、搜索驱动)如何影响有效性与效率?
- RQ5当前方法的主要局限性是什么,特别是在输入生成和模型复杂性方面?
主要发现
- 模型检测、符号执行、约束求解和基于搜索的测试生成在有效性上优于随机测试生成。
- 基于代码搜索的测试方法比基于GUI模型的方法更高效,后者因高开销而表现不佳。
- 现有技术仅能达到约50%的预期有效性水平,表明故障检测能力存在显著差距。
- 大多数自动化测试技术每款应用耗时超过30分钟,部分甚至长达数小时,表明效率低下。
- 仅约一半的测试工具在实际应用中具备实用性,原因在于有效性与效率之间的不良权衡。
- 自动化文本输入生成技术仍不成熟,大多数工具依赖随机文本,从而限制了有效性。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。