最近公司在开展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环境变量
搭建Android UI Testing自动化测试开发环境_第1张图片

3. 下载安装Android SDK
搭建Android UI Testing自动化测试开发环境_第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的环境变量

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. android软件测试log知多少
  2. Android 测试技能树
  3. Android存储访问及目录
  4. Android学习目录
  5. Android使用Junit测试
  6. mac添加android的adb等工具到环境变量
  7. Android单元测试之Local unit tests(下)
  8. Android自动化测试工具——Monkey

随机推荐

  1. 仿Android6.0联系人列表
  2. android复合控件
  3. android ios vue 互调
  4. 关于Android(安卓)intent的知识
  5. EditeText标签字体大小设置 是否可编辑
  6. Android安装以及Eclipse插件(Google Andr
  7. Android调用本机地图APP
  8. Android Non-UI to UI Thread Communicat
  9. Ubuntu 试用Android L版本
  10. android 之摄像头