本文主要介绍基于Jenkins+Ant+Robotium搭建android持续构建和自动化测试平台。

一,基础环境准备
1,安装jenkins及相关插件(svn、git、 gradle等)
2,安装ant
3,安装android sdk
4,下载Robotium相关jar包

二,应用构建

Jenkins上进行应用构建的核心是Ant脚本,即通过Ant脚本实现从代码到最终apk文件的整个流程:

第一步:生成.R文件

Android测试框架in android测试平台_自动化测试

第二步:生成class文件

Android测试框架in android测试平台_测试用例_02


第三步:代码混淆

Android测试框架in android测试平台_android_03


第四步:生成dex文件

Android测试框架in android测试平台_Android测试框架in_04


第五步:打包资源文件(包括res、assets、androidmanifest.xml等)

Android测试框架in android测试平台_android_05


第六步:生成未签名的apk安装文件

Android测试框架in android测试平台_android_06


第七步:对未签名的apk文件进行签名

Android测试框架in android测试平台_自动化测试_07


第八步:优化签名后的apk文件,即最终的android安装文件

Android测试框架in android测试平台_Android测试框架in_08

三,自动化测试

  自动化测试采用Robotium测试框架。这个框架的好处是使用java编写测试脚本,这样对于android研发人员就没有语言障碍;同时Robotium提供了丰富的模拟操作接口,通过调用接口即可模拟人对APP的各种操作;所有操作的界面还可以通过Screenshot接口进行截图;最后会生成xml和html格式的测试报告。

  自动化测试需要两个工程,一个是待测试的app工程main,一个是跑测试用例的app工程test。test工程里需要集成Robotium的jar包,然后在入口activity里面启动测试用例即可。下图是基于Robotium写的一个简单的测试用例:

  

Android测试框架in android测试平台_测试用例_09

四,Jenkins上建立持续构建和自动化测试任务

1,配置源代码地址

Android测试框架in android测试平台_测试用例_10


2,使用ant构建待测试app和跑测试用例的app

Android测试框架in android测试平台_Android测试框架in_11


3,将构建好的待测试app和跑测试用例的app安装到模拟器上

Android测试框架in android测试平台_自动化测试_12


4,采用shell脚本启动跑测试用例的app,开始自动化测试

Android测试框架in android测试平台_自动化测试_13


5,生成测试报告

Android测试框架in android测试平台_Android测试框架in_14