appium移动端自动化测试环境搭建windows-appium-android
第一步:安装jdk
安装jdk(1.7版本以上)
安装完成设置jdk环境变量(百度查询)
cmd命令下键入 java -version命令检查jdk是否安装成功且设置环境变量成功,如下图所示:

第二步:安装Android SDK(安卓软件开发包)
下载地址:http://tools.android-studio.org/index.php/sdk/
如下图所示:

下载此安装包至任意目录下解压,如下图所示:

解压完成以后,把SDK目录例如:D:\自动化测试工具\自动化测试工具\andrio_sdk\android-sdk-windows添加到环境变量中,必须创建一个名为ANDROID_HOME的变量。
如下图所示:

点击目录下的SDK Manager.exe进行工具安装。必装项为:Android SDK Platform-tools和Android SDK Build-tools,Android SDK Tools
镜像必须安装:随便选一个android版本进行安装(小波在此安装为Android5.0.1,如果电脑内存足够大可全部安装)
Google翻墙必须安装:Extras文件夹下的选项全部安装
如下图所示:



安装完成以后,把ANDROID_HOME、tools、platform-tools、build-tools目录添加到环境变量path中去。
如下图所示:

环境变量设置完成以后,需要找一个手机(以小波的vivo手机为例)打开手机的USB调试模式,通过数据线与电脑的USB接口进行相连接。
cmd下执行adb.dvices命令查看所连接的手机信息
如下图所示adb命令获取到连接手机的UDID信息:

小波在搭建此环境中出现好多坑:
1:检查数据线是否正常
2:检查USB接口是否正常(可换其他USB接口调试)
3:电脑的USB相关的驱动程序更新为最新(可通过本机安装为最新)
更新USB相关驱动程序为最新如下图所示:
进入计算机管理-》设备管理管理器-》通用串行总线控制器,对全部的USB驱动进行更新

点击“浏览我的计算机以查找驱动软件R”-》单击 下一步即可完成更新

5;用于有些电脑不识别安卓手机,那么需要更新修改一下adb_usb.ini文件,可以将设备管理器下的Android手机的VID、PID增加到adb_usb.ini文件中。
如下图所示:

将VID、PID中“_”后的4位数增加到adb_usb.ini下(注:adb_usb.ini默认在C盘当前用户家目录下的.android目录下)
如下图所示:
注:PID,VID后四位数值前加0x

如果adb devices出现5037端口未被占用依旧显示获取失败,出现以下报错时

解决方法:
第一步:
初一看应该是5037端口被占用了,一个比较常见的错误,执行命令查看5037端口被谁占用了:
netstat -ano | finder "5037"
但是神奇的事情发生了,结果是没有任何程序占用该端口。
第二步:
于是执行adb kill-server ,OK,再执行adb start-server,又提示相同的错误了,adb无法在5037端口启动。
第三步:
执行一下adb nodaemon server命令看看什么情况,这是一个比较有用的命令,一般情况下它会告诉我们哪里出问题了
adb nodaemon server
不幸的是仍然没有提示任何错误
第四步:
检查环境变量配置,没有错误
第五步:
基本排除adb本身的错误,开始定位CreateProcess failure, error 2 这个错误,查到了错误代码:
windows error code 2 means: 2 The system cannot find the file specified. ERROR_FILE_NOT_FOUND
and from the source code this is after a call to CreateProcess() and the file name is given by GetModuleFileName()
已经查证过不是环境配置的问题,所以定位为系统无法启动该文件。
第六步:
进入C:\WINDOWS\System32目录,检查adb相关文件。都是正确的。
第七步:
复制\System32目录下的adb.exe文件到C:\WINDOWS\SysWOW64 ,再次执行adb devices命令,提示缺失AdbWinApi.dll文件
再将\System32目录下的AdbWinApi.dll文件copy到C:\WINDOWS\SysWOW64,执行adb devices命令成功。
第三步 安装node.js
由于Appium的server端是node.js编写的所以需要先安装node.js。安装node.js后,可以直接通过npm安装Appium
下载地址:https://nodejs.org/en/download/
如下图所示:

下载至任意目录进行安装,node.js的安装一路傻瓜式next就可以了,注意一点,将路径改下,安装成功后会自动添加环境变量。也就是在cmd下任意目录都可以使用npm命令。
安装成功以后,在cmd下检查npm命令是否可用
如下图所示:

第四步:安装appium服务端
安装appium服务端,可通过cmd 下输入 npm install -g appium 进行安装。
如果npm install -g appium特别慢,无法下载时,可以用国内的镜像npm --registry http://registry.cnpmjs.org install -g appium
安装如果失败可以尝试通过cnpm安装appium
1:首先通过npm命令安装cnpm
npm install -g cnpm --registry=https://registry.npm.taobao.org:
2:再通过cnpm安装appium
cnpm install -g appium --no-cache
安装成功后,通过appium -v 查看当前appium版本,直接输入appium则启动appium server端
如下图所示:

第五步 安装appium客户端
appium客户端用于抓取app上定位信息
下载地址:https://github.com/appium/appium-desktop/releases/tag/v1.2.1
如下图所示:

双击安装,安装成功后桌面会有一个appium的快捷方式。
如下图所示:

到这里Windows-Android-appium的所有环境就已经搭建完成了。
下一篇博客请关注小波的appium自动化测试之夜游神环境搭建!
appium移动端自动化测试环境搭建windows-appium-android的更多相关文章
- Appium 简介与自动化测试环境搭建
1. Appium 简介 2. Appium 自动化测试环境搭建 1. Appium 简介 Appium 是一个开源测试自动化框架,可用于原生,混合和移动 Web 应用程序测试. 它使用 WebDri ...
- Appium 1.6.4 环境搭建流程(Java, Android+IOS, Windows+Mac)
Appium1.6.4已经出来一段时间了,快速给大家串一下怎么搭建,贴了下载链接 1 基础环境: Windows + Mac: Java JDK 1.8+ (需配置环境变量),Appium1.6.4的 ...
- 自动化测试环境搭建(appium+selenium+python)
一.需要安装的软件(根据你所需要的版本安装即可,不一定必须按照小编的版本来) JDK:1.8.0_171 Python:3.7.1 node.js:10.13.0 android-sdk_r24.4. ...
- Appium+python移动端自动化测试-环境搭建(一)
搭建所在系统环境:Windows7版本64位系统 一.环境准备 jdk8.0.151 android-sdk_r20.3.4-windows python3.5 appium1.4.16.1 Node ...
- 搭建appium+maven手机自动化测试环境搭建
搭建安卓自动化测试框架记录: 需要的软件: jdk版本:jdk1.8 appium版本:v1.4.16 下载AppiumForWindows.zip (下载appium1.7不需要配置环境变量) no ...
- 移动端自动化测试(一)appium环境搭建
自动化测试有主要有两个分类,接口自动化和ui自动化,ui自动化呢又分移动端的和web端的,当然还有c/s架构的,这种桌面程序应用的自动化,使用QTP,只不过现在没人做了. web自动化呢,现在基本上都 ...
- 全网最全最细的appium自动化测试环境搭建教程以及appium工作原理
一.前言 对于appium自动化测试环境的搭建我相信90%的自学者都是在痛苦中挣扎,在挣扎中放弃,在放弃后又重新开始,只有10%的人,人品比较好,能够很快并顺利的搭建成功.appium 自动化测试 ...
- 自动化测试 Appium之Python运行环境搭建 Part2
Appium之Python运行环境搭建 Part2 by:授客 QQ:1033553122 实践环境 参见 Appium之Python运行环境搭建 Part1 环境部署 1.安装Android SDK ...
- 自动化测试 Appium之Python运行环境搭建 Part1
Appium之Python运行环境搭建 Part1 by:授客 QQ:1033553122 实践环境 Win7 Python 3.4.0 JAVA JDK 1.8.0_121 node.js8.11. ...
随机推荐
- 【原创】Linux中断子系统(二)-通用框架处理
背景 Read the fucking source code! --By 鲁迅 A picture is worth a thousand words. --By 高尔基 说明: Kernel版本: ...
- Java重置Mysql主键自增长值
MySql 主键自增重置器(统一处理多个表) resetAutoincrement 是一款基于 Java 开发的程序,其功能为重置 mysql 数据库表的主键自增的值为最近的一个. 介绍 开发背景主要 ...
- 滴滴HBase大版本滚动升级之旅
桔妹导读:滴滴HBase团队日前完成了0.98版本 -> 1.4.8版本滚动升级,用户无感知.新版本为我们带来了丰富的新特性,在性能.稳定性与易用性方便也均有很大提升.我们将整个升级过程中面临的 ...
- v-model 指令来实现双向数据绑定
<div id="app"> <p>{{ message }}</p> <input v-model="message" ...
- Nice Jquery Validator 快速上手
(1).直接引用 一行代码引入插件,local 参数用来加载对应的配置文件.如果不传 local 参数,配置以及样式就需要自行引入. <script src="path/to/nice ...
- 【JAVA进阶架构师指南】之五:JVM性能调优
前言 首先给大家说声对不起,最近属实太忙了,白天上班,晚上加班,回家还要收拾家里,基本每天做完所有事儿都是凌晨一两点了,没有精力再搞其他的了. 好了,进入正题,让我们来聊聊JVM篇最后一个章节 ...
- Modern C++
microsoft: Modern C++ 目录 1. auto 关键字 2. 智能指针(smart pointers) 3. std::string & std::string_view 4 ...
- [转] 间接系统调用syscall(SYS_gettid)
点击阅读原文 在linux下每一个进程都一个进程id,类型pid_t,可以由 getpid()获取. POSIX线程也有线程id,类型pthread_t,可以由 pthread_self()获取,线程 ...
- LR脚本信息函数-lr_start_timer和lr_end_timer
为了计算时间更加精确,可以用这个函数去掉LR自身的检查点所浪费的时间.如text check and image time Action() { double time_elapsed, durati ...
- 记linux vsftpd配置遇到的错误
环境:centos 7 yum安装 yum install -y vsftpd 增加用户 # 家目录为/www 并设置nologin useradd -d /www -s /sbin/nologin ...