yonyouupinformationtechnologyCo.,LtdRobotium自动化测试框架用友网络股份有限公司U8移动及UAP开发部王兆君2015年1月4日Robotium培训•Robotium简介•Robotium环境搭建•脚本录制•脚本加强•脚本回放•测试结果收集•工具优缺点介绍Robotium简介•Robotium是一款国外的Android自动化测试框架,主要针对Android平台的应用进行黑盒自动化测试,它提供了模拟各种手势操作(点击、长按、滑动等)、查找和断言机制的API,能够对各种控件进行操作。Robotium结合Android官方提供的测试框架达到对应用程序进行自动化的测试。另外,Robotium对Activity,Dialog,Toast,Menu都是支持的。Robotium测试基础•咱们部门直接通过apk文件开发测试脚本•Apk命名标准:英文,前后需要一致•手动开发脚本注意重签名及记录包名和activity,使用resign工具(详情百度)•多翻翻api接口文档(本人整理一份)Robotium环境搭建•安装JDK•新增环境变量JAVA_home、ANDROID_home•ADT开发环境•更新安卓版本接口•Robotiumrecorder安装安装JDK•建议1.6及以上版本•安装路径建议全英文•安装过程中会出现两次安装提示第一次是安装jdk,第二次是安装jre。建议两个都安装在同一个java文件夹中的不同文件夹中。(不能都安装在java文件夹的根目录下,jdk和jre安装在同一文件夹会出错),默认路径安装就行。。配置环境变量•配置java相关的系统环境变量:java_home、path、classpath•检测是否成功,运行-cmd-输入命令:javac出现命令解释即为正确•配置安卓相关的系统环境变量:Android-home、path(两个路径:tools、flatformtools)。•检测是否成功,运行-cmd-输入命令:adb出现命令解释即为正确ADT开发环境•安卓的开发环境Eclipse集成开发平台•在\\172.16.4.108\u8移动应用安装包\licy1\Android_SDK_windows.•大家解压到英文路径下可使用。更新安卓版本接口•ADT-窗口-SDKmanager-勾选需安装兼容的api-install*packages•Tools下的AndroidSDKtools、AndroidSDKplatformtoolsb必装。•extras下的Androidsupportlibrary必装•其余其余Android版本选一常用的必装Robotiumrecorder安装•Robotiumrecorder是一个控件,基于Eclipse开发平台•Robotium是黑盒自动化测试架构•Robotium的核心是robotium.jar包•具体安装步骤见robotium安装文档。工程创建•文件-新建-项目-Androidrobotiumrecorder-newrobotiumtest-下一步•连接外部设备或启用安卓模拟器•窗口-显示视图-其他-devices可查看设备连接情况•选择apk包文件-填写工程名称-newrobotiumtest•等待installing提示完成后,开始recording脚本录制•窗口提示starting,开始手机端点击录制。•手机端操作后,在窗口中显示脚本•按照自动化测试用例进行动作录制•录制完成后点击SAVE,保存录制的脚本•填写该case名称,英文•下次如果是工程中新加case,工程名称一致,新增工程则同上步骤脚本加强•部分控件recorder无法识别只能手动添加,如:连接设置按钮•部分动作recorder无法识别只能手动添加,如:下滑动作•部分代码冗余,需要优化•具体API见robotiumAPI整理文档脚本回放•运行•选择运行方式•选择运行设备•脚本运行•部分脚本跑不过去,需要调试,或者更换控件的识别方法,具体情况具体分析测试结果收集•只能脚本运行时查看效果•脚本回放失败只能查看•计划编写个公共类,记录日志•计划做个循环失败后仍能跳过继续执行Robotium的优点•使用简便•测试脚本容易阅读•允许直接使用apk包,不必基于源代码•可识别元件容易•完美的设备支持Robotium的缺点不是所有的视图、对象、动作都支持测试脚本运行速度慢单一的类包含所有的方法,比较混乱测试结果收集困难,脚本后续开发工作量大国内资料较少,如需研究,还是英文文档