论文部分内容阅读
自2010年谷歌推出Android移动操作系统以来,Android在全球智能移动设备市场中所占份额逐年增长,经过短短几年的发展,Android已成为世界范围内占有率最高的智能移动设备操作系统。越来越多的移动设备厂商以及服务提供商专注于Android移动设备及应用的研发,竞争日益激烈,从而对作为保障移动设备及应用质量的测试环节带来了更大的挑战,尤其是Android移动设备自动化测试已成为了业界热点研究方向。本文旨在设计与实现基于定制化的Android自动化测试工具,使保证产品质量的测试工作能够达到高效、省时、省人力的目的。本文完成的主要工作如下:(1)首先介绍了Android开源自动化测试框架的发展现状,对目前使用广泛的自动化测试工具进行了对比分析,并总结了存在的主要通用问题。(2)结合公司内部测试现状,归纳并分析了公司对自动化测试的定制化需求,制定了基于Agent的Android自动化测试工具的设计方案。将自动化测试工具分为PC控制端的测试工具与移动设备端Agent去设计与实现,把测试的大部分工作放在PC端去执行,以减少执行测试时对移动设备性能的影响,提高整体测试的准确性。(3)详细设计与实现了一个C/S结构的Android自动化测试工具,使该工具能够自动完成部署测试环境、加载解析测试脚本、执行测试任务、比对测试结果、记录测试日志等一系列测试工作。同时,该工具还解决了公司内部定制化的需求,如复用Tcl测试脚本,满足对不同脚本的扩展性,加入OCR (Optical Character Recognition,光学字符识别)图像识别进行UI校验的问题。(4)最后,在Jenkins持续集成环境中,对自动化测试工具进行了实施与验证工作。本课题研究的基于定制化的Android自动化测试工具已实际应用于作者所在的公司。结果表明:该工具对保证测试质量,提高测试效率以及降低测试成本具有一定的现实意义和价值。同时,该工具作为自动化测试平台的一个子系统,能够与平台中的其它子系统协同工作,最大化实现测试流程的自动化。