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的环境,但是其中大量的工作都隐藏到了官方的脚本中,并不方便大家深入理解其中的过程,所以博主这里就将其中的过程一步步分解,方便大家! 前面的准备工作 ...
随机推荐
- MySQL- -Join语法解析与性能分析
Mysql Join语法解析与性能分析 一.Join语法概述 join 用于多表中字段之间的联系,语法如下: ... FROM table1 INNER|LEFT|RIGHT JOIN table2 ...
- SQL 的 ISNULL 与 NULLIF 运算符
1. ISNULL ISNULL(check_expression, replacement_value) 作用: 检查第一个参数是否为null. check_expression 与 replac ...
- 菜菜CPP日记
分支预测建议: http://www.cppblog.com/mysileng/archive/2014/09/29/208454.html #ifndef likely #define likely ...
- while do while 区别
一.while语句的一般形式为:while(表达式)语句其中表达式是循环条件,语句为循环体.while语句的语义是:计算表达式的值,当值为真(非0)时, 执行循环体语句. int i=10; whil ...
- df 命令(转)
linux中df命令的功能是用来检查linux服务器的文件系统的磁盘空间占用情况.可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信息. 1.命令格式: df [选项] [文件] 2.命 ...
- codis配置
codis集群配置 Codis 是一个分布式 Redis 解决方案, 对于上层的应用来说, 连接到 Codis Proxy 和连接原生的 Redis Server 没有明显的区别 (不支持的命令列表) ...
- echarts入门基础,画一个饼状图
注意:一定要自己引入echarts库 <!DOCTYPE html> <html> <head> <meta charset="utf-8" ...
- 设计模式之 -- 状态模式(State)
状态模式允许对象在内部状态改变时改变它的行为,对象看起来好像修改了它的类.当控制一个对象的状态转换条件分支语句(if...else或switch...case)过于复杂时,可以此模式将状态的判断逻辑 ...
- mongodb的一些基本操作
1.列出所有数据库 >show dbs 2.使用数据库 >use memo 3.列出当前数据库的collections >show collections 4.显示当前正 ...
- 【Unity3D基础】让物体动起来②--UGUI鼠标点击逐帧移动
背景 上一篇通过鼠标移动的代码很简单,所以看的人也不多,但是还是要感谢“武装三藏”在博客园给出的评论和支持,希望他也能看到第二篇,其实可以很简单,而且是精灵自控制,关键是代码少是我喜欢的方式,也再次印 ...