python+appium环境搭建
环境搭建
1、安装Microsoft .NET Framework 4.5
检测本机已安装的程序中,是否已经安装Microsoft .NET Framework 4.5及以上的版本,如果没有安装,需要进行安装
2、安装node-v6.11.4-x64.msi
安装appium的环境需要依赖node.js.
3、安装appium-desktop
官方网站地址:http://appium.io/
4、安装JDK
安装JDK1.8及以上版本。具体教程:https://jingyan.baidu.com/article/6dad5075d1dc40a123e36ea3.html
安装完成后,win+r cmd下输入java -version检查环境是否配置成功
5、安卓ADT工具,配置SDK环境变量
解压下载的adt压缩包,配置环境变量
配置环境变量:
添加ANDROID_HOME环境变量,配置sdk根目录。
在以上的截图中,
ANDROID_HOME=D:\software\adt-bundle-windows-x86_64-20140702\sdk
在PATH变量中添加adb所有的目录:
;%ANDROID_HOME%\platform-tools
检测:
进入cmd命令行,输入adb version
能够正常显示adb的版本就okay.
6、安装模拟器
不想使用真机的小伙伴可以安装模拟器,夜神、genymotion等等。。。
7、安装appium python客户端
使用python的pip命令,直接在线安装:
pip install Appium-Python-Client
至此,python+appium的环境搭建完成啦!!!接下来说一说如何使用
验证环境是否搭建成功
1、appium工作原理
当我在Windows平台上,通过Python(python-client )编写了一个appium自动化脚本并执行,请求会首先到 appium.dum (Windows下的appium-Server),appium-Server通过解析,驱动Android设备来执行appium自动化脚本。
2、adb连接模拟器
别人有比较详细的教程,这里就不一一赘述了,直接贴上地址吧:https://jingyan.baidu.com/article/ed15cb1ba2b7561be2698111.html
这个步骤的时候,遇到了一个坑,cmd中输入adb devices验证是否连接成功的时候,报错:adb server version (31) doesn't match this client (36),原因是SDK的adb.exe版本与夜神模拟器中的不一致,把夜神模拟器安装目录下D:\Program Files\Nox\bin中的adb.exe删掉,把SDK的C:\adt-bundle-windows-x86_64-20140702\sdk\platform-tools目录下的adb.exe文件拷贝过来,就可以解决了!
2、appium-client(python)与appium-server创建连接
启动appium(即appium-desktop),如图即为启动成功
编写python脚本:
from appium import webdriver desired_caps={} desired_caps['platformName']='Android' #系统名称 desired_caps['platformVersion']='4.4.2' #系统的版本号 desired_caps['deviceName']='Android Emulator' #设备名称,这里是虚拟机,这个没有严格的规定 desired_caps['appPackage']='com.lemon.lemonban' #APP包名 desired_caps['appActivity']='com.lemon.lemonban.activity.WelcomeActivity' #APP入口的activity #连接appium server,告诉appium,代码要操作哪个设备上的哪个APP driver=webdriver.Remote('http://127.0.0.1:4723/wd/hub',desired_caps)
tips:
1.http://127.0.0.1:4723/wd/hub中IP是固定的,端口号为appium中显示的端口号;desired_caps中的键名是固定的,键值根据要测试的设备以及APP的实际情况填写。
2.获取APP应用包名和入口activity语法命令:安卓SDK的build-tools\android-4.4W目录下输入cmd,回车键输入命令
aapt dump badging apk包名(可以把电脑本地存放该apk包的路径复制上来)
包名:
入口activity:
运行以上脚本,appium中会打印出日志,APP会成功进入入口的activity,如图,说明环境搭建成功了