Eclips+ADT+SDK构建android开发环境及android自动化测试开发环境
一. 需要用到的包:
1.adt-bundle-windows-x86_64-20140702.zip+JDK+ant
2.ant下载地址:http://ant.apache.org/bindownload.cgi
3.解压adt-bundle-windows-x86_64-20140702.zip,得到的目录结构:
二. 安装步骤
1.安装JDK并设置系统变量
2.打开SDK Manager.exe,请按红框操作,打开弹窗路径:菜单Tools->options
3.选择下载API,在该项我们发现没有system-image组件,这个是模拟器系统所需的,否则或者无法启动模拟机(使用真机的话,可以忽略)
4.system-image组件下载,请进入网址http://downloads.puresoftware.org/files/android/system-images/,下载对应API的system-image(如果只是作为自动化使用,建议API与开发产品的环境一致)
5.打开eclipse,创建模拟器
6.创建第一个APP,按要求选择自己所需的API版本即可
7.编译执行的过程有可能出现错误,学习目前建议选择API-19
三 . UIautomator自动化
1.创建新的Java Project项目,将android.jar/uiautomator.jar 导入到项目内(该包的路径在:ADT\sdk\platforms\android-19)
2.导入junit4的库
3.使用uiautomatorviewer.bat获取元素信息:(我使用了真机进行调试)
4.创建测试demo,测试打开设置等相关,具体查看以下代码:
package demo;
import java.io.IOException;
import com.android.uiautomator.core.UiObject;
import com.android.uiautomator.core.UiObjectNotFoundException;
import com.android.uiautomator.core.UiSelector;
import com.android.uiautomator.testrunner.UiAutomatorTestCase; public class LauachSettings extends UiAutomatorTestCase{
public void testDemo()throws UiObjectNotFoundException,IOException{
getUiDevice().pressHome();
//进入设置菜单
UiObject settingApp = new UiObject(new UiSelector().text("设置"));
settingApp.click();
//休眠3秒
try{
Thread.sleep(3000);
}catch(InterruptedException e){
e.printStackTrace();
}
//进入语音和输入法设置
UiObject settingAdd = new UiObject(new UiSelector().text("语言和时间"));
settingAdd.click();
}
}
5.找到sdk id,进入sdk-tools目录执行android list(我们选择android-19,id为1)
6.创建build文件
在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 TestDemo -t 1 -p F:\androidwsp\TestDemo
运行命令后,将会在工程的根目录下生成build.xml文件
7.编译生成jar包
cmd进入项目的工程目录,然后运行ant build,使用ant编译生成jar,执行如下:
8.运行命令后在项目目录可以看到生成的jar包
9.将jar包传送到手机并运行
adb push F:\androidwsp\TestDemo\bin\TestDemo.jar data/local/tmp
运行:
adb shell uiautomator runtest <jar文件名> -c <包名.类名>
adb.exe shell uiautomator runtest TestDemo.jar -c demo.LauachSettings
10.观察真机,可以看到执行的步骤
END. 以上为uiautomator执行自动化测试的demo项目从部署到运行全过程~
Eclips+ADT+SDK构建android开发环境及android自动化测试开发环境的更多相关文章
- [Android] 环境配置之基础开发环境(SDK/Android Studio)(转)
[Android] 环境配置之基础开发环境(SDK/Android Studio) 博客: blog.csdn.net/qiujuer 网站: www.qiujuer.net 开源库: Geniu ...
- java Android SDK安装与环境变量配置以及开发第一个Android程序
JAVA的安装与环境变量的配置 1.先下载JAVA,并且安装. 下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk-7u3 ...
- windows7下安装配置phonegap3.0 (cordavo)开发环境 (涉及android sdk配置)
之前在mac上安装调试过phonegap,现在公司用的是windows7,所以不得不再进行一次windows下的配置工作,顺便也写下来了 主要麻烦的地方是要在win7下添加好几个环境变量,这一块地方特 ...
- 搭建eclipse的安卓开发环境(eclipse+jdk+adt+sdk)
学校暑期大作业让用安卓写一个app,有两种方案(android stduio+sdk和eclipse+jdk+adt+sdk)折腾了几天发现还是后者好用,但是安装环境和下载真的是去了半条命,(不过由于 ...
- Android基础新手教程——1.2.1 使用Eclipse + ADT + SDK开发Android APP
Android基础新手教程--1.2.1 使用Eclipse + ADT + SDK开发Android APP 标签(空格分隔): Android基础新手教程 1.前言 这里我们有两条路能够选,直接使 ...
- Centos Android开发环境配置-Android Tools -android list sdk --extended --all
Centos Android开发环境配置-Android Tools -android list sdk --extended --all 安装完Android Tools后执行 android ...
- Mac 10.9x下安装配置phonegap3.0开发环境 (涉及android sdk配置)
最近突然想弄一下phonegap,之前一直是听说,没亲自配置开发过.结果配置过程非常艰难啊.特别是android平台的配置,那叫一个麻烦,网上搜了半天都没找到非常好的资料.文章也都是抄来抄去,最烦的就 ...
- 使用Android Studio与ArcGIS Android SDK的开发环境部署和HelloWorld
android studio(以下简称AS)是google推荐的android专用IDE,替代目前主流的eclipse,另外arcgis也把AS作为推荐的android IDE 本文不介绍androi ...
- android开发环境搭建(for 驱动开发人员)
前言 一.android驱动的开发流程 1: 写LINUX驱动 2: 写LINUX应用测试程序 3: 写JNI接口,用来包装第二步写的应用 (要用NDK来编译) 生成一个.SO文件,相当于CE下的DL ...
随机推荐
- JAVA代码:生成一个集合,自定义大小,100以内的随机整数
JAVA代码:生成一个集合,自定义大小,100以内的随机整数 方法一:(Random类) package com.dawa.test; import java.util.ArrayList; impo ...
- python常用的字符串格式化有哪几种?
常用字符串格式化%和format 皇城PK Python中格式化字符串目前有两种阵营:%和format,我们应该选择哪种呢? 自从Python2.6引入了format这个格式化字符串的方法之后,我认为 ...
- react-native-typescript-项目环境搭建
1.yarn global add create-react-native-app //全局安装 2.create-react-native-app 项目名称 3.yarn add typescrip ...
- gitlab升级备份
一.备份有关备份和恢复的操作,详见我的另一篇博客:Gitlab的备份与恢复在开始升级之前,一定要做好备份工作,并记录好版本号.1.查看当前Gitlab的版本号 [root@gitlab ~]# cat ...
- time包 — 汇总
time包学习 package main; import ( "time" "fmt" ) func main() { //time.Time代表一个纳秒精度的 ...
- Python规范:代码规范要注意
主要有以下两种代码规范 <8 号 Python 增强规范>(Python Enhacement Proposal #8),以下简称 PEP8: <Google Python 风格规范 ...
- Go 协程
Go 协程 协程与传统的系统级线程和进程相比,协程的优势在于其"轻量级",可以轻松创建上百万个协程而不会导致系统资源衰竭,所以协程也叫做轻量级线程. 在Go中goroutine就是 ...
- VS2019删除大量空白行或者缩进大量空白行
原文:VS2019删除大量空白行或者缩进大量空白行 问题描述: 在vs编辑器的代码中有时含有大量无用的空白行,我们想删除这些大量空白行或者缩进空白行. 注: 不需要将代码复制在类似word的文本编辑器 ...
- 深入理解JVM(二)--对象的创建
Java是一门面向对象的语言,在Java程序运行的过程中,无时无刻都会有对象被创建出来,在程序语言中,创建对象(例如克隆,反序列化)通常仅仅是一个new关键字,但是在虚拟机中是怎样的呢?本文主要了解一 ...
- python day 8: re模块补充,导入模块,hashlib模块,字符串格式化,模块知识拾遗,requests模块初识
目录 python day 8 1. re模块补充 2. import模块导入 3. os模块 4. hashlib模块 5. 字符串格式:百分号法与format方法 6. 模块知识拾遗 7. req ...