robotium安卓UI自动化测试实现+源代码(2)
时间:2019-04-27 15:24 来源:毕业论文 作者:毕业论文 点击:次
4.3.1启动客户端的实现方法 19 4.3.2查找控件的实现方法 19 4.3.3执行测试用例的实现方法 20 4.3.4截图的实现方法 21 4.3.5错误日志的实现方法 21 5 系统测试 22 5.1 启动被测程序的测试用例 22 5.2 测试结果的测试用例 23 5.3 截图的测试用例 23 5.4 日志输出的测试用例 24 6 总结和展望 25 6.1 总结 25 6.2 展望 25 致谢 25 参考文献 26 基于robotium的安卓UI自动化测试实现 1 绪论 1.1研究背景 自21世纪我们步入移动互联网时代以来,移动终端也逐渐兴起,如今的移动设备主要运行以安卓和ios为代表的操作系统,而安卓属于开源软件且价格上比ios更占优势,因此市面上安卓的设备占据了大半部分。 由于商业模式的驱动,安卓应用的功能日益丰富,版本迭代的速度也大大加快,导致软件的质量不断下降,而项目迭代的每个版本都是在旧版本的基础上增加或修改少量的功能。但是由于对代码进行了改动,因此未发生变化的功能也需要进行测试,避免修改过程中引入新的缺陷。因此软件测试成了软件产品开发过程中的重要步骤。 测试的过程伴随着整个软件开发的周期,测试的好坏有直接影响了软件的质量。在传统的移动端测试中,手工测试占比比较大,但手工测试同时存在着测试人员能力不一致、人力消耗大等不足,因此高效率的自动化测试可以从根本上解决这个问题。虽然已经有一些自动化测试工具应用到实际中来,但是大部分都存在着一些问题,所以本文利用已有的测试框架Robotium,对它进行完善和改进,增加了截图和日志输出等功能,使测试人员更方便的进行测试。 1.2国内外研究状况 1.2.1国内研究现状 1.2.2国外研究现状 1.3应用前景 如今,普遍在用的手机操作系统Android、ios、Windows Mobile等。这些手机操作系统中,安卓操作系统属于开放型平台,除此之外的其余的手机操作系统都属于封闭型平台,近几年,安卓系统凭借其强大的发展优势,迅速的占领了手机操作系统的半壁江山,大量的资源下载,高蔓延性,和可移植性等高性能的特点是他的发展动力[3]。 安卓系统的开发发展十分迅速,对比这种情况,其研发前期的测试技术的缺失,这问题就显得更为突出。目前国内外也有多款测试软件,如Pounder、Abbot、GUITAR等,针对性的问题在于,这些软件并不是专业的安卓测试软件,它们主要针对Java或C++、C#开发人员而设计的,与其具有效果的只有Junit,但对安卓系统来说这不是最好的测试工具,且参考数据的给出量很少,所以,这不能达到更好的支持该系统的目的[4]。 1.4主要研究内容 本文主要研究的内容有:对安卓应用自动化测试、robotium的相关文档进行需求分析,设计自动化测试所需的测试框架及测试用例。通过jxl实现测试数据的导入,降低了代码与测试用例的耦合性。对错误的测试结果提供了截图和日志输出功能。将最常用的操作,点击、输入、滑动抽取出来,作为关键字,使用关键字来操作。综上所述,实现了一个基于Robotium的关键字驱动的自动化测试框架,并同时提供测试结果生成、错误跳转、截图和日志输出的功能。综合上述工作,实现了一个机遇关键字驱动的自动化测试框架,适用于基于Android的GUI黑盒测试以及源代码的白盒或灰盒测试。 (责任编辑:qin) |