转自:http://www.cnblogs.com/rexmzk/archive/2012/12/26/2834380.html

最近公司在开展Android的自动化测试,美国那边的开发人员利用Android的UI Testing和powershell搭建了一个Android自动化的框架。通过几天的学习,大概熟悉了他们的这套框架了。

新的Android SDK提供2个工具用以UI的自动化:
uiautomatorviewer- 一个GUI工具,用来扫描识别UI上面的控件
uiautomator- JAVA类库,包含一些自定义的UI功能测试,用以自动化和跑test case的引擎。

这两个工具只在Android SDK Tools, Revision 21 or higher和Android SDK Platform, API 16 or higher才有。

当你安装完SDK以后,就可以用AVD创建虚拟机器或者使用USB连接实际的device来做自动化了。注意:如果想用真正的device来做自动化,机器的android版本必须是4.1以上,而且要在开发模式下把USB Debugging打开。
当AVD创建好,或者设备通过USB连接到电脑后,可以以下命令检查设备的id(这个在以后编写程序的时候会用到,特别是当你同时连接多台设备的时候)
<android-sdk>\platform-tools>adb devices

今天,先把搭建UI Testing测试开发环境的步骤写下来,有需要的也可供参考。因为我之前没有任何编程基础,所以内容可能有误。如发现错误,也希望各位能提出,谢谢。

1. 安装JDK,这个直接google搜索一下,就可以了。我的当前版本是6.0
2. 设置java_home环境变量
AndroidUI自动化测试工具-UIautomator_第1张图片

3. 下载安装Android SDK
AndroidUI自动化测试工具-UIautomator_第2张图片

4. 通过SDK Manager下载最新SDK(版本>21),platform-tools(版本>16)
5. 下载安装Android 4.2 (API17)下的SDK Platform。如果需要使用AVD的(Android虚拟机),可以把整个API 下下来。(注意:只有Android 4.1.2(API 16)以上才支持uiautomator)
6. 设置ANDROID_HOME环境变量
7. 下载ant并设置ant的环境变量:下载地址:http://ant.apache.org/,在本文中下载的是1.7.0版本。解压到某个目录(例如E:"apache-ant-1.7.0),配置环境变量即可使用。

ANT环境变量设置

Windows下ANT用到的环境变量主要有2个,ANT_HOME 、PATH。

设置ANT_HOME指向ant的安装目录。

设置方法:
ANT_HOME = D:/apache_ant_1.7.0

将%ANT_HOME%/bin; %ANT_HOME%/lib添加到环境变量的path中。

设置方法:
PATH = %ANT_HOME%/bin; %ANT_HOME%/lib

8. 安装Eclipse - 创建一个新的Java Project
9. 点击Java Project,Menu - Project — Properties
10. Java Build Path - Libraries
11. Add External JARs... - 把android-sdk\platform\android-xx里面的android.jar和uiautomator.jar添加进来
12. Add Library... - 添加JUnit - JUnit3类库
13. 在src里添加目录src/com/uia/example/my
14. 在my下添加一个JUnit Test Case,名为LaunchSettings
15. 把http://developer.android.com/tools/testing/testing_ui.html下的sample复制黏贴至testcase,保存
16. 运行cmd
17. 运行命令:
   -<android-sdk>/tools>android create uitest-project -n <name> -t 1 -p <path> (<name>就是LaunchSettings, <path>就是项目所在目录)
18. 切换到项目所在目录(build.xml文件所在目录),运行
  -ant build
  完成后会在/bin下生成LaunchSettings.jar
19. 使用adb push命令,把test case(LaunchSettings.jar)上传到被测试设备上
  -<android-sdk>\platform-tools>adb push <path_to_output_jar>/data/local/tmp/ (<path_to_output_jar>:jar的文件目录)
20. 最后,运行命令,那个sample的test case就会在设备上跑起来了。
  -<android-sdk>\platform-tools>adb shell uiautomator runtest LaunchSettings.jar -c com.uia.example.my.LaunchSettings

想了解更多Android UI自动化的内容,可以上官网查看(http://developer.android.com/tools/testing/testing_ui.html)

更多相关文章

  1. 3.6.3新版本AndroidStudio报Could not resolve all artifacts fo
  2. 如何设置Android命令行环境变量
  3. 帮同事找到了一个问题的解决办法:在android 3.0版本以上的系统 we
  4. Android各个版本的名称和更新
  5. Android 各版本 设置 USB 默认连接 MTP 模式 ( Android 6.0+ )
  6. Android9.0 P 电源管理&android各版本电量优化功能策略
  7. android工程gen目录无法生成的解决办法汇总
  8. Android 7.1 车机 Android 系统 在线升级,将安装到下载到/data/

随机推荐

  1. android解析json(以解析時时价为例),java也
  2. 视频格式转换库--libyuv的简介与编译
  3. 让Camera在portrait模式下不旋转90度
  4. 这是你从未见过的组件库 -- Android(安卓
  5. Android开发人员有福了---wifi连接调试
  6. 《第一行代码Android》读书笔记
  7. 提android 项目方案一个求感兴趣者加入
  8. 【Anroid】第9章 列表视图(1)--ListView相
  9. android studio 3.x 以上版本的Native JN
  10. 无Mac机IOS开发环境搭建手记