爬前准备工作
开始安装Appium之前,先搞清楚它到底是做什么的——Appium是一个自动化测试开源工具,没错,就是做测试用的,跟Selenium有点像,但专门用来操作手机App。更有意思的是,可以用Python写脚本,通过Appium实现对App的自动化操作,比如抓取数据。
今天这篇教程的目的很单纯:给你一个100%能跑起来的入门实例,跟着一步步走,别跳过任何步骤,保你成功。
下载地址
直接下最新的稳定版就行了,不用追太新的版本。
https://github.com/appium/appium-desktop/releases/tag/v1.10.0

出现下面的界面,说明安装成功了。先别急着点别的,点击 Edit Configurations。

注意:弹出来的窗口里需要配置 ANDROID_HOME 和 JA VA_HOME 两个路径,这两个的前提条件都是安装好 Android Studio 才能配置。所以,接下来就去下载安装它吧。

Android Studio的下载、安装与配置
这个IDE是用来开发Android应用的,体积不小,安装过程可能遇到各种幺蛾子。遇到问题不要慌,多搜搜百度、谷歌、Bing,解决方案遍地都是。
在装Android Studio之前,强烈建议先把JA VA的SDK装上。下载地址:
https://www.oracle.com/technetwork/ja va/ja vase/downloads/jdk8-downloads-2133151.html
安装的目标很简单:在CMD窗口输入 ja va,出现如图的效果。要是这一步没搞定,千万别往下走,否则后面会卡死。
百度关键词:“JA VA环境安装”,最麻烦的部分是配置 JA VA_HOME 环境变量。

下载地址:https://www.android-studio.org/index.php 下载安装,过程没什么好说的。遇到错误就解决掉,最终出现下面这个界面就算安装成功。注意:这个页面先别关,后面还有操作要完成。


打开页面后,把4.0以后的所有SDK都勾选上吧。好了,到这配置基本就差不多了。

尝试连接夜神模拟器
重头戏来了——我们要用Appium操作夜神模拟器里的APP。
第一步,确认夜神模拟器的 adb 和 Android Studio的 adb 版本是否一致。
默认情况下,用 adb version 可以看到Android SDK的版本是 1.0.40。
C:\Users\你的用户名>adb version
Android Debug Bridge version 1.0.40
Version 4986621
Installed as C:\Users\你的用户名\AppData\Local\Android\Sdk\platform-tools\adb.exe
进入夜神模拟器安装路径,输入 adb version,看看版本。这里显示也是1.0.40,注意路径已经变了。
D:\Program Files\Nox\bin>adb version
Android Debug Bridge version 1.0.40
Version 4986621
Installed as D:\Program Files\Nox\bin\adb.exe
如果两个版本不一致,就需要处理。常见错误提示是这样的:
adb server version(31) doesn't match this client (36);killing...
解决方法:
a、关掉夜神模拟器。同时去任务管理器里检查一下,adb.exe 和 nox_adb.exe 这两个进程有没有在运行?有的话就结束掉。
b、找到SDK的目录和夜神模拟器的目录。把SDK目录(C:\Users\你的用户名\AppData\Local\Android\Sdk\platform-tools)下的 adb.exe 文件复制到夜神模拟器的目录(D:\Program Files\Nox\bin)下。把夜神模拟器目录下原本的 adb.exe 和 nox_adb.exe 重命名为 adb_bak.exe 和 nox_adb_bak.exe。然后把从SDK目录复制过来的 adb.exe 放到夜神目录下,同时复制一份改名为 nox_adb.exe。
配置完成后,就可以开始测试了。
启动夜神模拟器设备
打开CMD,进入命令窗口,切换到夜神模拟器根目录。
运行下面命令之前,确认夜神模拟器软件处于关闭状态。
D:\Program Files\Nox\bin>nox_adb.exe connect 127.0.0.1:62001
already connected to 127.0.0.1:62001
出现 already connected to 127.0.0.1:62001 就对了。
这里扩展一下,各模拟器adb连接端口:
| 模拟器名称 | 端口号 |
|---|---|
| 夜神安卓模拟器 | 62001 |
| 雷电安卓模拟器 | 5555 |
| 网易MuMu(安卓模拟器) | 7555 |
| 逍遥安卓模拟器 | 21503 |
| BlueStacks(蓝叠安卓模拟器) | 5555 |
| 天天安卓模拟器 | 5037 |
| 安卓模拟器大师 | 54001 |
| Genymotion | 5555 |
可以打开夜神模拟器了
命令行输入下面的命令,查看是否有设备连接:
D:\Program Files\Nox\bin>adb devices
List of devices attached
* daemon not running; starting now at tcp:5037
* daemon started successfully
127.0.0.1:62001 device
启动Appium
现在关键配置都搞定了,可以打开Appium了。

点击右上角的查找按钮,出现配置页面。

我们需要配置如下内容:appPackage 和 appActivity 的获取方式见后面的图片。
{
"platformName": "Android",
"platformVersion": "4.4.2",
"deviceName": "127.0.0.1:62001",
"appPackage": "com.taobao.taobao",
"appActivity": "com.taobao.tao.welcome.Welcome"
}

获取apk包名和launcherActivity
把下载好的APK包放到夜神模拟器根目录,然后运行:
aapt dump badging 51job.apk
就能拿到两个关键参数,完美。


配置Appium
按照上面的参数配置好之后,就可以进行基本操作了。

点击 start session,可以看到夜神模拟器已经完美运行起来了,哈哈。
最后提醒
有几个点需要格外留心:
- 熟悉Android系统环境变量的配置方式。
- JA VA环境安装可能会失败,多百度,解决方案很多。
- 下载Android SDK时卡住,多半是网络问题。
- 夜神模拟器启动不了,先检查
adb version相关配置。 - 夜神模拟器卡死,重启模拟器一般就能解决。

