一、安装JDK并配置环境变量

1:在Java官网上下载本机系统相对应的jdk文件安装,直接下一步一步到位

2:配置JAVA_HOME
  新建 JAVA_HOME 环境变量,变量值是所安装JDK 的路径,如:D:\Java\jdk1.8.0;

3:配置PATH
  找到PATH变量,后面添加:%JAVA_HOME%/bin;%JAVA_HOME%/jre/bin;

4:配置CLASSPATH
  新建 CLASSPATH 环境变量,变量值是:%JAVA_HOME%/lib/dt.jar;%JAVA_HOME%/lib/tools.jar

5:验证安装是否成功
  1)打开cmd命令行窗口
  2)在命令行窗口中输入java -version,显示JDK版本号表示安装成功:

二、Android SDK环境搭建

注:下载安装ADT(ADT Bundle)插件,ADT Bundle包含了Eclipse、ADT插件和SDK Tools

1:在线安装

1.1:Help-install new-softar----add

1.2:点击ADD,输入在线安装地址(Name:ADT    Location:http://dl-ssl.google.com/android/eclipse/),点击ok

2:下载解压安装(解压目录尽量不要带中文目录)eg: D:\IMAuto\android-sdk

三、配置Android SDK环境变量:

  1:在系统变量中新建 ANDROID_HOME 环境变量,ANDROID_HOME=D:\IMAuto\android-sdk\sdk(SDK所在的路劲)

  2:在PATH后面添加SDK相关的目录:

注:tools 目录下运行android命令,platform-tools目录下运行adb命令

    1) tools目录:%ANDROID_HOME%\tools

    2) platform-tools目录:%ANDROID_HOME%\platform-tools

    3) build-tools目录:%ANDROID_HOME%\\build-tools\android-4.3

  3:配置eclipse (如上图ADT Bundle包含有eclipse):

    1) 双击打开eclipse,点击菜单栏中的选项 Window--->Perferences

    2) 在打开的对话框中,查看第二选项 Android,后面有一个 SDK Loaction,如果在 SDKLocation 后面没有内容,则通过点击后面的按钮【Browser】按钮,找到自己所配置的SDK文件目录下选中, 然后点击【Apply】,如直接有路径可忽略,然后点击【OK】就好了。

四:配置appium-home 环境变量

1:Appium_Home=C:\Program Files (x86)\Appium

2:path中加入%Appium_Home%

3:在path中加入D:\sdk\platform-tools;

4:安装的appium文件夹的Appium\node_modules\.bin加到系统环境变量path中

五:node.js 安装配置

1:先安装node.js,安装成功以后cmd输入 node -v 测试否否成功,在系统变量中配置PATH的路劲 eg:%NODE_PATH%;D:\AppAutoTools\nodejs\

1) 打开CMD窗口,执行 npm install -g appium 命令开始安装Appium. Appium默认被安装到C:\Users\Administrator\AppData\Roaming\npm\ 下

2) 把路径C:\Users\Administrator\AppData\Roaming\npm\ (appium可执行文件所在的目录)添加到环境变量Path

六、测试 Android SDK 相关环境搭建是否配置成功

进入cmd:

1:验证 platform-tools 环境变量:

  1) 在cmd命令行输入 adb shell,若进入则安装成功输入ls命令 即可查看目录信息

2:验证 tools 目录下的环境变量:

  1)在命令行输入 android,该命令会启动Android SDK Manager

3:验证 build-tools 目录下的环境变量

  1) 在命令行输入 aapt命令,可查看相关信息

4:进入到

C:\Program Files (x86)\Appium\node_modules\.bin,运行appium-doctor

七:启动运行

1:若运行过程中出现“A Java Exception has occurred”

解决方案:

jvm 和JDK的版本不一致导致,cmd java –version  javac –version

项目—》右键点击Buid path—》configure buid pathàjava Compiler

八:启动Android模拟器

cmd 输入:Android avd,选择模拟器点击【start】

九:连接真机运行APP

1:创建APP包:用于存放被自动化的APP

2:获取程序主包名和主类名

2.1:通过 启动appium—》点击APPium settings—》导入app包—》获取参数后取消勾选

2.2:解压APP包》打开AndroidManifest.xml,manifest对应的是appPackage,activity对应的是AppActivity(效率最高的:问开发人员 )

3:将获取的参数值填入主程序包名和主类名中

4:启动服务手机端提示是否要安装如下,点击是 安装成功

5:测试连接真机是否成功:先打开开发者模式,在输入adb devices

6:启动APPium服务:appium –a 127.0.0.1 –p 4723

总结:Android自动化的环境搭建到启动运行的完整过程

参考链接:https://www.cnblogs.com/puresoul/p/4597211.html

《Android自动化环境搭建》的更多相关文章

  1. 简单物联网:外网访问内网路由器下树莓派Flask服务器

    最近做一个小东西,大概过程就是想在教室,宿舍控制实验室的一些设备. 已经在树莓上搭了一个轻量的flask服务器,在实验室的路由器下,任何设备都是可以访问的:但是有一些限制条件,比如我想在宿舍控制我种花 ...

  2. 利用ssh反向代理以及autossh实现从外网连接内网服务器

    前言 最近遇到这样一个问题,我在实验室架设了一台服务器,给师弟或者小伙伴练习Linux用,然后平时在实验室这边直接连接是没有问题的,都是内网嘛.但是回到宿舍问题出来了,使用校园网的童鞋还是能连接上,使 ...

  3. 外网访问内网Docker容器

    外网访问内网Docker容器 本地安装了Docker容器,只能在局域网内访问,怎样从外网也能访问本地Docker容器? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Docker容器 ...

  4. 外网访问内网SpringBoot

    外网访问内网SpringBoot 本地安装了SpringBoot,只能在局域网内访问,怎样从外网也能访问本地SpringBoot? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装Java 1 ...

  5. 外网访问内网Elasticsearch WEB

    外网访问内网Elasticsearch WEB 本地安装了Elasticsearch,只能在局域网内访问其WEB,怎样从外网也能访问本地Elasticsearch? 本文将介绍具体的实现步骤. 1. ...

  6. 怎样从外网访问内网Rails

    外网访问内网Rails 本地安装了Rails,只能在局域网内访问,怎样从外网也能访问本地Rails? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Rails 默认安装的Rails端口 ...

  7. 怎样从外网访问内网Memcached数据库

    外网访问内网Memcached数据库 本地安装了Memcached数据库,只能在局域网内访问,怎样从外网也能访问本地Memcached数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装 ...

  8. 怎样从外网访问内网CouchDB数据库

    外网访问内网CouchDB数据库 本地安装了CouchDB数据库,只能在局域网内访问,怎样从外网也能访问本地CouchDB数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Cou ...

  9. 怎样从外网访问内网DB2数据库

    外网访问内网DB2数据库 本地安装了DB2数据库,只能在局域网内访问,怎样从外网也能访问本地DB2数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动DB2数据库 默认安装的DB2 ...

  10. 怎样从外网访问内网OpenLDAP数据库

    外网访问内网OpenLDAP数据库 本地安装了OpenLDAP数据库,只能在局域网内访问,怎样从外网也能访问本地OpenLDAP数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动 ...

随机推荐

  1. snoop的基本用法

    关于Snoop的用法   snoop是开发wpf应用程序的利器.用它可以观察WPF的可视树,监听事件,更改元素属性等.   下面我介绍下snoop一些用法.   1.获取指定应用程序的UI     打 ...

  2. ajax传字符串时出现乱码问题的解决

    字符乱码的解决: 第一种在@RequestMapping中添加 @RequestMapping(value="queryAllToTree",method=RequestMetho ...

  3. css - 全屏

    css - 全屏 heml和body元素的宽高 html与body都是块元素,但它俩比较特殊,宽高由如下定义: 1.默认的宽度=浏览器可视区域的宽度(不包含滚动条),可设置大于可视区域的宽度,但不会计 ...

  4. RibbitMQ 实战教程

    # RabbitMQ 实战教程 ## 1.MQ引言 ### 1.1 什么是MQ `MQ`(Message Quene) : 翻译为 `消息队列`,通过典型的 `生产者`和`消费者`模型,生产者不断向消 ...

  5. jQuery中ajax请求的六种方法(三、六):load()方法

    6.load()方法 load的html页面 <!DOCTYPE html> <html> <head> <meta charset="UTF-8& ...

  6. C++笔记(11) 智能指针

    1. 设计思想 智能指针是行为类似于指针的类对象,但这种对象还有其他功能.首先,看下面的函数: void remodel(std::string & str) { std::string * ...

  7. 搞懂Redis协议RESP

    RESP (REdis Serialization Protocal) Redis客户端和服务端之间通信的协议.它很简单,建立在TCP协议上,提供简单.高性能.可读性强的数据序列化的规范和语义. 5种 ...

  8. Playwright-python 教程

    安装 pip install playwright -i https://mirrors.aliyun.com/pypi/simple/ 使用阿里源,下载速度快一点. python -m playwr ...

  9. Python3-sqlalchemy-orm 分组统计

    #-*-coding:utf-8-*- #__author__ = "logan.xu" import sqlalchemy from sqlalchemy import crea ...

  10. Android kotlin http url request

    kotlin.concurrent.thread{ val url = "https://hangj.cnblogs.com/" val res = try { java.net. ...