appium===Python+Appium环境部署教程
*前提是你已经安装好python,以及python的pip工具
*安装python请自行百度教程~
1.安装安卓sdk
安装包:http://tools.android-studio.org/index.php/sdk
*如果不需要虚拟机,则不需要安装这一步!
你需要科学上网,或者查找到国内的 Android 镜像,安装一个版本的Android虚拟机。你可以根据自己的喜好选择安装 Android 5.0 /5.1 /6.0 /7.0 版本。
这里推荐一个网站:http://www.androiddevtools.cn/
并且配置环境变量:
下面设置 Android 环境变量,方法与Java环境变量类似。我本机的目录结果为:
D:\android\android-sdk-windows
下面设置环境变量:
“我的电脑” 右键菜单 —> 属性 —> 高级 —> 环境变量 —> 系统变量 —> 新建…
变量名 | 变量值 |
---|---|
ANDROID_HOME | D:\android\android-sdk-windows |
找到 path 变量名—> “编辑” 添加:
变量名 | 变量值 |
---|---|
PATH | ;%ANDROID_HOME%\platform-tools;%ANDROID_HOME%\tools; |
检查,如果你的环境变量配置正确,试用行,adb 命令。有响应,则配置正确
2.安装Appium
*推荐安装Appium-desktop系列————https://github.com/appium/appium-desktop/releases
1.2.4版本
安装包:https://pan.baidu.com/s/1pKMwdfX
或者https://bitbucket.org/appium/appium.app/downloads/
配置环境变量,将(以我本机为例):
E:\Appium\node_modules\.bin
将此路径路径添加到Path
检验:cmd运行命令:appium-doctor,如下图你就安装配置成功了。
3.安装python-client
通过cmd窗口给python安装模块命令:pip install Appium-Python-Client
如果上句执行失败,试试: pip install Appium-Python-Client -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com
当出现类似:
Successfully built Appium-Python-Client
Installing collected packages: Appium-Python-Client
Successfully installed Appium-Python-Client-0.24
ok你已经安装成功了
4.调试运行:
这时候,我建议你选择一部安卓版本小于7.0 大于4的真实机,原因稍后说。链接电脑,打开“开发者模式”,确定手机驱动正常。
检查一下,cmd 输入:adb devices 查询到你的手机型号
代码如下:
(V1.5以上的版本,find_element_by_name已经废弃)
from appium import webdriver from time import sleep s_time = 3 desired_caps = {} desired_caps['platformName'] = 'Android' desired_caps['platformVersion'] = '7' desired_caps['deviceName'] = 'CKLDU17105005281' desired_caps['appPackage'] = 'com.android.calculator2' desired_caps['appActivity'] = '.Calculator' driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps) driver.find_element_by_id("digit_1").click() driver.find_element_by_id("digit_5").click() driver.find_element_by_id("digit_9").click() driver.find_element_by_id("del").click() driver.find_element_by_id("digit_9").click() driver.find_element_by_id("digit_5").click() driver.find_element_by_id("op_add").click() driver.find_element_by_id("digit_6").click() driver.find_element_by_id("eq").click() sleep(s_time) driver.quit()
复制,保存为fristTest.py文件。代码里,应该 #标注修改的地方,保证修改正确了。
继续:
打开你的Appium,界面如下:
修改:
platformVersion修改为和代码中一致的版本号
启动:
运行你的fristTest.py的代码。
如果手机有反应,打开了你的计算器,并且输入数字。(尽管最后报错了,因为其中的“清除”按钮元素定位不一定正确)那么你至少的安装是正确的~
如果出错了,你也不知道那里错了:
[INSTALL_FAILED_ALREADY_EXISTS: Attempt to re-install io.appium.settings wit~~~~
adb server version (31) doesn’t match this client (39); killing…~~~~~
error: Failed to start an Appium session, err was: Error: Requested a new session but one was in progress
排查方法:
1.检查环境变量是否配置正确,python,sdk,appium...
2.检查你的手机是否安卓7.0以上,如果是,参考这篇文章:http://www.cnblogs.com/imlvbu/p/7127940.html
3.检查你的adb,最好删除掉你本机以前的adb文件,因为安卓sdk自带有adb(参考路径:E:\Androidsdk\platform-tools),所以不需要你以前的,以免引起冲突
4. ... ... ... ...
Dont worry! 后续我会把我遇到的错误全部整理出来。