大家应该都有同一种感觉,学习appium最大的难处之一在于环境的安装,安装流程比较繁琐,安装的工具和步骤也较多,以下是基于Windows系统下的Android手机端的安装流程。就像我们在用Selenium进行web自动化测试的时候一样,我们需要一个浏览器来执行测试脚本。那么移动端自动化测试,我们同样需要一部Android手机(手机需要链接电脑)或者 Android 模拟器。
appium的环境搭建
一、环境准备
在环境搭建前需要检查本机电脑的位数,根据相应位数下载对应的安装包。
需要准备的工具如下:
Jdk
android-sdk_r24.3.4-windows
Python
appium
.net Frameword
Node.js:node-v4.4.7-x64
appium-Python-Client
Android 模拟器
SDK platform tools 安装
二、jdk 安装
众所周知,Android 是由 Java 语言开发的,所以想开发 Android 应用首先需要 Java 环境, 所以, 我们首先需要安装 Java 环境。java 下载地址:http://www.java.com/zh_CN/download/manual.jsp。
注:java 环境分 JDK 和 JRE ,JDK 就是 Java Development Kit.简单的说 JDK 是面向开发人员使用的 SDK,它提供了 Java 的开发环境和运行环境。JRE 是 Java Runtime Enviroment 是指 Java 的运行环境,是面向 Java 程序的使用者,而不是开发者。
**(1) 下载:**下载 jdk 包,小编的是 64 位 win10 版本,其它高级版本应该也是可以的。根据自己的系统选择对应版本。

**(2) 安装:**双击下载的 JDK,设置安装路径,注意安装路径不要有空格,不要有中文。jdk 和 jre 不要放在一个文件夹下。
**(3) 环境变量:**设置三个环境变量,分别是 JAVA_HOME,CLASS_PASS,PATH,在我的电脑>选择"属性"->"高级"->"环境变量"->"系统变量"->"新建"里设置。



**(4)验证:**编辑完成后,需要验证 java 是否安装成功,方法是在 cmd 中输入 java 和 javac,如果显示以下信息,则说明安装成功。java 命令可以运行 class 文件字节码。javac 命令可以将 java 源文件编译为 class 字节码文件。


三、Android-sdk 下载安装
Android SDK 提供了你的 API 库和开发工具构建,测试和调试应用程序, Android。简单来讲,Android SDK 可以看做用于开发和运行 Android 应用的一个软件。
根据我的验证 adt 和 sdk 都可以用来运行 android 模拟器,所以下载哪个都可以。下载链接中已经标识了系统信息,请根据自己的操作系统下载相应的版本。
扩 展理解:
ADT(Android Development Tools):目前Android开发所用的开发工具是Eclipse,在Eclipse编译IDE环境中,安装ADT,为 Android开发提供开发工具的升级或者变更,简单理解为在Eclipse下开发工具的升级下载工具。adt只是一个eclipse的插件,里面可以设置sdk路径。
SDK(Software Development Kit):一般是一些被软件工程 师用于为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件的开发工具的集合。在Android中,他为开发者提供了库文件以及其他开发所用到的工具。简单理解为开发工具包集合,是整体开发中所用到的工具包,如果你不用Eclipse作为你的开发工具,你就不需要下载 ADT,只下载SDK即可开发。SDK可以自己编译,在linux环境下通过make命令进行,耗时比较长,需要有耐心。我们可以把自己编译的 SDK通过ADT导入eclipse。在此基础上可以对源码包进行修改,比如修改android system/app/phone.apk中的源码。
**(1) 下载:**好多人直接下载 AndroidStudio,但是如果只做自动化的话只需要下载 Android SDK 就可以了。
下载地址:http://tools.android-studio.org/index.php/sdk/。


(2) AndroidSDK 环境变量:下载成功解压后配置 Android SDK 的环境。如上面新建 JAVA_HOME 一样,新建 ANDROID_HOME,如下:

"我的电脑"右键菜单--->属性--->高级--->环境变量--->系统变量-->新建

找到 path 变量名--->"编辑"添加:

四、Node.js 安装
简单的说 Node.js 就是运行在服务端的 JavaScript。Node.js 是一个基于Chrome JavaScript 运行时建立的一个平台。Node.js 是一个事件驱动 I/O 服务端 JavaScript 环境,基于 Google 的 V8 引擎,V8 引擎执行 Javascript 的速度非常快,性能非常好。
(1)下载:
下载地址是 https://nodejs.org/en/Cs

(2)环境变量:下载获取到安装文件后,直接双击安装文件,根据程序的提示, 完成 nodejs 的安装(一直下一步就行,可以将路径进行修改)。将 Node.js 的安装路径(也就是 node.exe 文件所在的目录)D:\Program Files\nodejs 追加到环境变量 Path 中。

(3)验证:检查一下环境是否配置好,在命令行中输入 npm。

五、net framework 安装
由于 appium 是用.net 开发的,所以安装之前需要安装.net framework,否则安装过程中会报错,
官网下载:http://www.microsoft.com/zh-cn/download/details.aspx?id=30653
下载成功后直接点击安装即可。
六、appium 安装
(1) 下载:
下载地址 https://bitbucket.org/appium/appium.app/downloads/
当前最新版本为 appiumForWindows_1_4_16_1.zip
注意:这是一个 Windows 版本,如果你的电脑为 MAC 请下载 appium-1.5.3.dmg。以 Windows 为例,将下载的 appiumForWindows.zip 进行解压,点击 appium-installer.exe 进行安装。
(2)环境变量:
将安装的 appium 文件夹所在目录\appium\node_modules\.bin 添加进 path。

(3)验证:cmd 打开命令行窗口,输入 appium-doctor ,出现以下提示,All Checks were successful ,说明环境配置成功。

七、Python 安装
(1) 下载:打开 Python 官网网址 https://www.python.org/,双击进行安装。安装完成后,可以看到安装好的 Python 目录,如图:

(2)验证:打开 cmd,输入 Python,即可看到版本信息并进入 Python,如下:

八、appium-python-client 安装
安装完 Python 后,我们需要将 Python 与 appium 关联起来。cmd 打开命令行窗口,输入:pip install appium-Python-Client,提示成功就可以了。

九、Android 模拟器安装
当 Android SDK 安装完成之后,并不意味着已经装好了安装模拟器。Android 系统有多个版本,所以我们需要选择一个版本进行安装。
打开解压后的 SDK 文件夹,点击 SDK Manager,双击启动 SDK Manager.exe程序。

点击"create":

如果显示屏分辨率比较低的话,尽量选择低分辨率的"Device"。点击"OK",在 AVD Manager 窗口,点击"Start..."按钮启动 android 模拟器。

因为新虚拟机没了实体键,所以我们可以利用键盘按键来操作 android 虚拟机。

当然,不能保证你 SDK 可以更新。所以, 这里推荐一个网站:http://www.androiddevtools.cn/它提供了国内的代理,以及各种开发工具的安装。在 Android SDK Manager 的菜单栏上点击"Tools"---->"Options..." 设置相关代码,如下图:

然后,就可以更新了:

十、SDK platform tools 安装
Android SDK Platform-tools 是版本有区别的工具文件夹,里面有 adb 、
aapt、fastboot 等工具包。在 AndroidDevTools.cn 网站上找到Android SDK Platform-tools 下载链接。

(1) 安装:安装 Tools 下的 Android SDK Platform-tools 和 Android SDK Build-tools,Android SDK Tools 可以选择是否更新,建议直接更新。镜像:随便选个版本也可以选择多个版本安装,由于镜像比较大,所以喜欢真机的朋友们可以不下载镜像,GoogleFQ 安装:Extras 文件夹下所有的全部安装。


(2) Tool 环境变:将下面环境变量添加到 path 中,如下:
变量名:PATH
变量值:%ANDROID_HOME%\tools;%ANDROID_HOME%\platform-tools;
%ANDROID_HOME%\build-tools\27.0.3

(3) 验证:检查 Android SDK 是否配置成功,win+r cmd 打开命令行窗口,在命令行窗口中输入 adb ---version:

打开 Windows 命令提示符,通过"appium-doctor"命令检查 appium 环境。如果显示"All Checks ware successful",则说明环境以及搭建成功。

ok,今天我们的知识分享就到这里了,下一期我们将从appium的原理,它的加载过程,工作过程以及所使用的技术等。
最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:
这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!
