Android UiAutomator环境搭建及使用(QQ交流群:490451176)
Android自动化框架常用的有很多,本身也提供了很多自动化测试框架,每个都有其优势和不足 。当然对于我们做UI自动化测试来说,简单易用即可。
UiAutomator也是Android提供的自动化测试框架,基本上支持所有的Android事件操作,且不需要测试人员了解代码实现细节,测试人员可以用uiautomator投入viewer抓取app页面的控件属性,不需要看源码。基于java,测试代码结构相对简单,且容易上手,学习成本不高,一次编译,所有设备或模拟器都能运行测试,能跨app。当然,不足是:只支持sdk16及以上,不支持Hybird app、webapp。下面,我们来一个小例子,进行说明uiautomator的环境搭建和使用。
一、环境准备
1. 安装JDK,必要条件。
2. 下载sdk/adt(android所需,目前adt自带sdk和eclipse,API需要16以上),配置环境变量:先建立ANDROID_HOME,然后在path中添加%ANDROID_HOME%\tools;
3. 安装ANT工具,并配置环境变量:先建立ANT_HOME变量,然后在path中添加%ANT_HOME%\bin;测试是否成功,运行-ant。
4. 安装Eclipse,并安装adt插件。
二、建立Eclipse project
1. 打开Eclipse,new-新建java project,输入project 名 UIAutomator,点击finish。

2. 添加Android库
找到路径sdk\platforms\android-20下面的android.jar和uiautomator.jar,copy到project的lib下。


把Android.jar 和uiautomator.jar build path中来。
3. 新建第一个Demo程序

代码中,写入 getUiDevice().pressHome();一行代码进行测试。
4. 查看sdk ID
cmd进入sdk\tools\ 目录下,运行命令:android list,查看API 大于15的SDK的ID值,及当前已安装Android版本,当前是1

5. 生成bulid文件
在\sdk\tools\目录下,运行命令:android create uitest-project -n <name> -t <android-sdk-ID> -p <path>
其中name为将来生成的jar包的名字,可以自己定义,android-sdk-ID为上一步骤看到的1,path是project的路径名称,android create uitest-project -n first -t 1 -p E:\workspace\UIAutomator

运行命令后,将会在工程的根目录下生成build.xml文件

6.编译生成jar
cmd进入项目的project目录,然后运行ant build,使用ant编译生成jar,执行如下:

在bin目录下生成rar文件

7. push并运行jar
adb push <jar文件路径> data/local/tmp
实际执行命令为:adb push E:\workspace\UIAutomator\bin\first.jar data/local/tmp

8. 运行jar文件
adb shell uiautomator runtest <jar文件名> -c <包名.类名>
实际运行命令为:adb shell uiautomator runtest first.jar -c com.iu.android.TestPage.TestDemoOne(注意不要写错包名和类名),可以看到手机会按照Runner中的步骤自动执行。
Android UiAutomator环境搭建及使用(QQ交流群:490451176)的更多相关文章
- Android菜鸟的成长笔记(1)——Android开发环境搭建从入门到精通
原文:Android菜鸟的成长笔记(1)--Android开发环境搭建从入门到精通 今天在博客中看到好多Android的初学者对Android的开发环境的搭建不熟悉而导致不能进行学习,所以我决定自己写 ...
- 转---详细的Android开发环境搭建教程
五步搞定Android开发环境部署——非常详细的Android开发环境搭建教程 引言 在windows安装Android的开发环境不简单也说不上算复杂,本文写给第一次想在自己Windows上建立A ...
- Qt for Android开发环境搭建及测试过程记录
最近学习了Qt的QML编程技术,感觉相较于以前的QtGUI来说更方便一些,使用QML可以将界面与业务逻辑解耦,便于开发. QML支持跨平台,包括支持Android平台,因此可以使用Qt的QML进行An ...
- Android开发环境搭建全程演示(jdk+eclipse+android sdk)
全程演示android开发环境的搭建过程,无需配置环境变量.所有软件都是写该文章时最新版本 一 相关下载 (1) java JDK下载: 进入该网页: http://java.sun.com/java ...
- Java、Android 开发环境搭建
一.准备工作 为便于管理,将java开发工具集中到一个文件夹中.创建D:\javaDevE文件夹,JDK.Android-SDK.Eclipse.tomcat等都可以安装到这个文件夹中. 二.搭建Ja ...
- Android开发环境搭建相关文章列表(转载)
Android开发虽然有所了解,但是一直没有搭建开发环境去学习,Android的更新速度比较快了,Android1.0是2008年发布的,截止到目前为止Android已经更新Android5.0.1, ...
- Android开发环境搭建及常见问题解决方法
转自: http://www.cnblogs.com/rwxwsblog/p/4769785.html 在移动互联网的时代,Android的份额早已超过了苹果.Android的出现无疑加速了移动互联网 ...
- Android测试环境搭建(win7)
一.安装JDK并配置环境变量 1.在Java官方网站上下载相应系统的jdk文件安装,如win7 64 位系统下安装jdk-6u45-windows-x64,全部选择默认的安装路径即可安装完成. 2.配 ...
- Ionic Android开发环境搭建 下
上篇 Ionic 安装完成了,由于要开发Android,所以必不可少需要继续搭建Android开发环境. 首先,下载并安装JDK.然后配置一下环境变量. 接着,下载并安装Android SDK.下载过 ...
随机推荐
- linux下高并发网络应用注意事项
本文转自:http://www.blogjava.net/bacoo/archive/2012/06/11/380500.html linux下高并发网络应用注意事项 vi /etc/sysctl.c ...
- shell指令操作memcached
shell指令操作memcached,可以用来直接测试memcached. 初始值为1000 #set test-value =1000printf "set test-value 0 0 ...
- MySQL中的索引的引用
博文首先说明索引的分类及创建,然后会涉及到索引的可用性选择以及索引的优化. 索引是什么?先说创建索引的目的,创建索引是为提高对数据的查询速度.在字典的目录中,我们可以很快找到某个字的位置,索引的作用就 ...
- php5.4一下 json_encode 不转义中文
转载地址:http://www.nowamagic.net/php/php_FunctionJsonEncode.php 在 php 中使用 json_encode() 内置函数(php > 5 ...
- Redis学习笔记之Linux下Redis的安装和部署
0x00 Redis介绍 Redis是当前比较热门的NOSQL系统之一,它是一个key-value存储系统.和Memcache类似,但很大程度补偿了Memcache的不足,它支持存储的value类型相 ...
- postman中如何使用OAuth
https://learning.getpostman.com/docs/postman/sending_api_requests/authorization/ Authorization The a ...
- Using SQLXML Bulk Load in the .NET Environment
http://msdn.microsoft.com/en-us/library/ms171878.aspx 1.首先创建一张表 CREATE TABLE Ord ( OrderID ,) PRIMAR ...
- TimerPickerDialog 中 onTimeSet 执行两次的问题
开发android小闹钟的程序时,在添加闹钟时闹钟列表中总是出现两个相同的闹钟. btnAddAlarm.setOnClickListener(new View.OnClickListener() { ...
- MAC OSX Docker安装教程2018
1.首先打开Docker商店 Docker商店地址:https://store.docker.com/editions/community/docker-ce-desktop-mac 2.打开后界面如 ...
- 在请求中使用XML Publisher生成文件报错
在页面上使用按钮生成该文件不报错,但是使用请求就报错. 错误内容如下 Error : No corresponding LOB data found :SELECT L.FILE_DATA FILE_ ...