python+appium 环境搭建和Appium_Python_Client包版本注意事项

引言

  Appium 是一个开源、跨平台(测试程序跨平台、支持多平台上的app测试)、多语言支持的(开发语言)移动应用自动化工具。

  对于appium的环境搭建可以参考这篇文章https://blog.csdn.net/weixin_42617600/article/details/114111785?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522169461433616800184198497%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=169461433616800184198497&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~top_positive~default-1-114111785-null-null.142^v93^chatsearchT3_2&utm_term=appium&spm=1018.2226.3001.4187

环境配置的过程中主要包括以下几个方面:

1.python和pycharm的安装

2.jdk的安装和环境配置

3.appium安装

4.导入Appium_Python_Client包

5.Android SDK连接模拟器

注意事项

  笔者是基于anaconda的虚拟环境搭建appium并连接mumu模拟器实现自动化操作

1.在python和pycharm的安装

     由于是在anaconda环境中,最好是创建一个新的虚拟环境(避免在导入appium包时与已有的包发生冲突),python的版本最好是3.8,3.9.

2.jdk的安装和环境配置

  上述文章的jdk版本是 1.8,这与后面的Appium_Python_Client包和appium的版本对应,环境变量配置如下:

系统变量下

path路径下

 3.Android SDK连接mumu模拟器

  安装 Android SDK只需要解压一个熟悉的地方并在系统变量下配置ANDROID_HOME环境变量,结果如下:

为了方便,可以把SDK中的adb.exe配置在path路径中:
 

在连接安卓设备时,一定要打开手机的开发者模式,并允许USB调试。mumu模拟器的端口号是7555(其他模拟器) 

打开自己的模拟器,cmd输入adb connect 127.0.0.1:7555

python+appium 环境搭建和Appium_Python_Client包版本注意事项_第1张图片

 4.导入Appium_Python_Client包

 在导包时,我选择的是conda install Appium_Python_Client,下载的包的版本也是1.02版,但是包中默认是包含selenium=3.141包和urllib3=2.0

 在脚本运行时可能出现这样的错误:

ValueError: Timeout value connect was <...>, but it must be an int, float or None

(urllib3版本过高!!!)降低urllib3版本为1.26

AttributeError: ‘NoneType‘ object has no attribute ‘to_capabilities‘ 

(selenium版本过高!!!)降低selenium版本为3.x

笔者所用三者版版本为

Appium_Python_Client=1.02

selenium=3.141

urllib3=1.26

 5.appium安装

   这里appium安装的版本是与上述jdk的版本相匹配的1.15.1。启动appium并点击编辑配置,显示了JAVA_HOME和ANDROID_HOME的环境变量说明环境变量已经配置好了

python+appium 环境搭建和Appium_Python_Client包版本注意事项_第2张图片

启动服务器,启动检查器会话

python+appium 环境搭建和Appium_Python_Client包版本注意事项_第3张图片

可以在这里输入设备参数进行检测是否能够连接成功

如果出现一下错误:

 shell ime enable io.appium.settings/.UnicodeIME' exited with code 127'; Stderr: '/system/bin/sh: ime: inaccessible or not found'; Code: '127'

可以试着把unicodeKeyboard属性去掉 

你可能感兴趣的:(appium,python)