由于安全问题,Appium 1.x 版本不再被维护,但想要继续使用Appium进行自动化可以使用 Appium 2.x。
1. 安装Appium 2.x
在过往文章中有介绍过Appium 1.x 的安装,所以一些必备的软件(如:JDK、SDK、node.js、Python)安装就不再细嗦,不了解的小伙伴可以前往查看 Appium 1.x安装与入门
1.1 卸载旧版 Appium 1.x
使用npm命令卸载以前安装的旧版 Appium 1.x(如果安装过的话)
npm uninstall -g appium
再卸载 Appium-doctor (如果安装过的话)
npm uninstall -g appium-doctor
然后再检查一下有没有卸载干净
appium -v
如果命令行没有返回 Appium 的版本信息或者返回 “command not found”,则说明旧版 Appium 已经卸载干净。
1.2 安装Appium 2.x
安装 Appium
npm install -g appium
检查Appium版本号
appium –v
2. 安装Appium driver
3. 安装Appium Inspector
Appium Inspector的安装往期也有讲过,因为跟与Appium服务器分家,所以现在Appium Inspector的安装也是很方便的,直接到GitHub下载最新的安装就行,Appium Inspector下载地址:https://github.com/appium/appium-inspector/releases
4. 安装Appium Python Client客户端
由于博主比较喜欢用Python来做自动化,所以这里介绍安装Python端的客户端
pip install Appium-Python-Client
5. 启动及连接测试
5.1 启动Appium 2.x
5.2 Appium Inspector连接
在Appium Inspector中添加如下配置
{"platformName": "Android","appium:platformVersion": "8.1.0","appium:deviceName": "6a2c02ad","appium:automationName": "UiAutomator2","appium:appPackage": "tv.danmaku.bili","appium:appActivity": "tv.danmaku.bili.MainActivityV2","appium:ignoreHiddenApiPolicyError": "true","appium:unicodeKeyboard": false,"appium:noReset": true
}
保存后启动会话(中间会安装一些应用在手机上,同意就行了)
5.3 脚本连接测试
from appium import webdriver
from appium.options.android import UiAutomator2Options
from selenium.webdriver.common.by import By
from appium.webdriver.extensions.android.nativekey import AndroidKey
"""@author: Hincy"""desired_caps = {'platformName':'Android', # 被测手机为安卓'platformVersion':'8.1.0', # 手机安卓版本'deviceName':'6a2c02ad', # 设备名,安卓手机可以随便填写'appPackage':'tv.danmaku.bili', # 启动App,Package名称'appActivity':'tv.danmaku.bili.MainActivityV2', # 启动Activity名称'unicodeKeyboard':False, # 使用自带输入法,输入中文时填写True'resetKeyboard':True, # 执行完程序恢复原来输入法'noReset':True, # 不要重置App'newCommandTimeout':6000,'automationName':'uiAutomator2'
}# 连接Appium Server
server_url = "http://127.0.0.1:4723"options = UiAutomator2Options().load_capabilities(desired_caps)
driver = webdriver.Remote(command_executor=server_url,options=options)