UiAutomator环境搭建及详细操作
一、环境搭建
1.1 必备条件
- JDK
- SDK(API高于15)
- Eclipse(安装ADT插件)
- ANT(用于编译生成的jar)
- 安装JDK并添加环境变量
1.2 详细步骤
1.安装JDK并添加环境变量
JDK下载地址:http://jdk.android-studio.org/
安装JDK 选择安装目录,安装过程中会出现两次安装提示。第一次是安装 jdk ,第二次是安装 jre 。建议两个都安装在同一个java文件夹中的不同文件夹中。(不能都安装在java文件夹的根目录下,jdk和jre安装在同一文件夹会出错)
如下图所示

1):安装jdk 随意选择目录 只需把默认安装目录 \java 之前的目录修改即可
2):安装jre→更改→ \java 之前目录和安装 jdk 目录相同即可
注:若无安装目录要求,可全默认设置。无需做任何修改,两次均直接点下一步。


安装完JDK后配置环境变量 计算机→属性→高级系统设置→高级→环境变量

系统变量→新建 JAVA_HOME 变量 。
变量值填写jdk的安装目录(本人是 E:\Java\jdk1.7.0)
系统变量→寻找 Path 变量→编辑
在变量值最后输入 %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;
(注意原来Path的变量值末尾有没有;号,如果没有,先输入;号再输入上面的代码)

系统变量→新建 CLASSPATH 变量
变量值填写 .;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar
(注意最前面有一点)系统变量配置完毕

检验是否配置成功 运行cmd 输入 java -version (java 和 -version 之间有空格)
若如图所示 显示版本信息 则说明安装和配置成功。

2.添加SDK环境变量
SDK下载地址:http://sdk.android-studio.org/
下载解压完JDK后配置环境变量
计算机→属性→高级系统设置→高级→环境变量

在系统变量下面点击新建android,输入的参数如下所示,其中变量值是自己解压后SDK的路径。

然后在path中添加%android%;

在CMD窗口输入:adb,出现以下信息表示环境变量添加成功。

SDK开发包的下载及更新,打开Android SDK Manager:

选择自己需要的包,点击"install packages",然后在下一步,单击每一包名,选中“accept”。然后单击“install”。
在下载页面会有下载的进度,由于是国外的官网,下载速度相当的慢。
3.安装Eclipse,并安装ADT插件
Eclipse下载地址:download.eclipse.org/
ADT下载地址:http://adt.android-studio.org/
下载解压即可,绿色版可直接使用。
4.安装ANT工具,并添加环境变量
下载地址:http://ant.apache.org/bindownload.cgi
先建立ANT_HOME变量,然后在path中添加%ANT_HOME%\bin


二、详细操作
2.1建立工程
用Eclipse新建Java Project
File->New->Java Project,输入工程名称点击"Finish"

2.2添加JUnit库
在工程名称上点击右键,Bulid Path->Configure Bulid Path

点击Next

点击Finish
2.3添加Android库
找到路径sdk\platforms\android-18下面的android.jar和uiautomator.jar添加进来(android-17以上):

所有库添加完成后如下图:

2.4在src中添加包,然后添加class文件
在新建的工程下的src上点击右键,New->Class
输入包名和类名,包名的命名规则:首字母为小写,类名:首字母英文大写,后面字母均为小写,多个单词组成,每个单词的首字母大写

点击Finish
在class文件中添加如下内容:

2.5找到SDK ID
cmd进入sdk\tools\ 目录下,运行命令:android list
查看API 大于15的SDK的ID值,当前是2;

2.6创建bulid文件
仍然在\sdk\tools\目录下,运行命令:
android create uitest-project -n <name> -t <android-sdk-ID> -p <path>
其中name为将来生成的jar包的名字,可以自己定义,android-sdk-ID为上一步骤看到的2,path是新建工程的路径名称
android create uitest-project -n AutoRunner -t 2 -p D:\adt-bundle-windows-x86_64-20140702\eclipse\workspace\ChpJavaTwo

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

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

在bin目录下生成rar文件

2.8 push并运行jar
adb push <jar文件路径> data/local/tmp
实际执行命令为
adb push D:\adt-bundle-windows-x86_64-20140702\eclipse\workspace\ChpJavaTwo\bin\AutoRunner.jar data/local/tmp

运行jar文件
adb shell uiautomator runtest <jar文件名> -c <包名.类名>
实际运行命令为
adb shell uiautomator runtest AutoRunner.jar -c testpackage.TestClass(注意不要写错包名和类名)
可以看到手机会按照Runner中的步骤自动执行。
UiAutomator环境搭建及详细操作的更多相关文章
- Docker+STF在ubuntu下测试环境搭建(详细搭建步骤及踩坑记录)
一.什么是OpenSTF? STF又称OpenSTF,它是一个手机设备管理平台,可以对手机进行远程管理.调试.远程手机桌面监控等操作.这个系统类似于目前很流行的云测服务比如Testin,虽然网页上提供 ...
- mysql同步之otter/canal环境搭建完整详细版
接上一篇mysql 5.7多源复制(用于生产库多主库合并到一个查询从库). 这一篇详细介绍otter/canal环境搭建以及当同步出现异常时如何排查.本文主要参考https://blog.csdn.n ...
- Android UiAutomator环境搭建及使用(QQ交流群:490451176)
Android自动化框架常用的有很多,本身也提供了很多自动化测试框架,每个都有其优势和不足 .当然对于我们做UI自动化测试来说,简单易用即可. UiAutomator也是Android提供的自动化测试 ...
- OA环境搭建及卸载操作帮助文档
目 录 项目介绍 JDK的安装与验证 1.安装JDK 2.添加环境变量 3.验证JDK MySql的安装与验 1.安装MySql 2.登录Mysql帐号 3.导入数据库 Tomcat的安装与验证 ...
- Linux环境搭建及基础操作
一.Linux环境搭建 1.安装虚拟机软件(VMWare,Parallel) 虚拟机的作用:将本来不是适合当前操作系统的分区虚拟化成适合当前操作系统的分区格式 2.新建虚拟机: 类似买了一台新的电脑, ...
- Hibernate环境搭建超详细
前言 环境搭建其实可以简单到导入相关jar包即可. 但是对于学习来说,这个环境搭建的内容还是挺多的,目的是提供一个让我们如何快速学习和掌握类库的学习环境.作为程序猿,学习和使用类库是必须掌握的技能.如 ...
- Appium环境搭建超详细教程
前言: 本系列教程会从软件的基本安装开始,最终目的是通过完成几个案例后, 大家实现自由抓取App中想要的资源. 本系列以后会更的: Appium基本使用及控制真机及安卓模拟器 Mitmproxy抓包工 ...
- 从壹开始前后端分离 [ Vue2.0+.NET Core2.1] 二十一║Vue实战:开发环境搭建【详细版】
缘起 哈喽大家好,兜兜转转终于来到了Vue实战环节,前边的 6 篇关于Vue基础文章我刚刚简单看了看,感觉写的还是不行呀,不是很系统,所以大家可能看上去比较累,还是得抽时间去润润色,修改修改语句和样式 ...
- 深入理解Fabric环境搭建的详细过程
博主之前的文章都是教大家怎么快速的搭建一个Fabric的环境,但是其中大量的工作都隐藏到了官方的脚本中,并不方便大家深入理解其中的过程,所以博主这里就将其中的过程一步步分解,方便大家! 前面的准备工作 ...
随机推荐
- faster with MyISAM tables than with InnoDB or NDB tables
http://dev.mysql.com/doc/refman/5.7/en/partitioning-limitations.html Performance considerations. So ...
- SQLite核心函数一览
abs(X) abs(X)返回 X 的绝对值. Abs(X) returns NULL if X is NULL. Abs(X) return 0.0 if X is a string or blo ...
- EntityFramework 实体拆分与表拆分
摘录自https://msdn.microsoft.com/zh-cn/data/jj591617 * 将实体类型的 CLR 属性映射到数据库中的多个表(实体拆分) 实体拆分允许一个实体类型的属性分散 ...
- Selenium脚本编写环境的搭建/XPath
编写环境主要分为三个部分: JUnit : java单元测试框架: Firebug: firefox 附加组件,Firebug是firefox下的一个扩展,能够调试所有网站语言,如Html,Css等, ...
- 当html标签不被识别时(不解析)不妨试试htmlspecialchars_decode();试试
- JavaScript特效(调试笔记)
JavaScript特效 一.在网页上显示当前的时间日期,例如:“2016年3月26日 星期六”. js源代码: function getTime() { var today = new Date() ...
- LeetCode Read N Characters Given Read4
原题链接在这里:https://leetcode.com/problems/read-n-characters-given-read4/ 题目: The API: int read4(char *bu ...
- asp.net页面间传值方式
使用asp.net开发项目,必然会在页面间进行传值,本文介绍几种常见的页面传值方式,仅作笔记,以便后续查找使用. 前提:新建两个页面:ValuePage.aspx,ObtainValue.aspx,本 ...
- C# ASP.NET MVC HtmlHelper用法大全
UrlHrlper 下面的两个地址一样的功能 下边这个防止路由规则改变 比如UserInfo/Index改为UserInfo-Index,使用下面的不受影响 另一种形式的超链接: <%: Htm ...
- tomcat access log 参数
%a - 客户端IP地址 %A - 本机IP地址 %b - 发送字节数,不含HTTP头 如果为空是 '-' %B - 同上 %h - 客户端机器名 (如果connector的enableLookup ...