• Appium+Python3安装教程


    一、准备工作:

    1、windows64位电脑(以windows11为例)
    2、Android实体或者虚拟机(以实体机+USB线为例)
    3、工具(点击下载)【链接:https://pan.baidu.com/s/1rFfnnVHL1bLIJg-zQCYbSw
    提取码:1212 】
    4、良好的心态与耐心(重要)

    二、安装Pycharm和Python

    1、见工具下面的PDF
    2、点击下载教程 【链接:https://pan.baidu.com/s/1uuIIwEsShucHbXThu6hECA
    提取码:2121 】

    安装platform-tools(ADB)

    1、下载platform-tools【https://dl.google.com/android/repository/platform-tools_r33.0.2-windows.zip
    2、解压下载的platform-tools文件,点击进入文件夹,看到adb.exe后,复制其路径
    3、打开环境变量编辑窗
    在这里插入图片描述
    4、在系统变量中新建一个adb 变量写刚才复制的路径
    在这里插入图片描述5、在系统变量中找到Path,然后点击编辑,然后添加%adb%,然后点击确定。在这里插入图片描述
    6、按win键+R,在输入CMD,在黑窗中输入 adb version如果出现版本,说明安装成功,环境变量配置成功。
    在这里插入图片描述

    四、安装JDK(直接借鉴)

    1、appium server好像只支持1.8的jdk,so有时候太优秀不一定能被认可请添加图片描述
    2、下一步…
    在这里插入图片描述
    3、点击更改,将路径保存下来,一会要用到
    在这里插入图片描述

    4、下一步…
    在这里插入图片描述
    5、等待…
    在这里插入图片描述
    6、安装成功
    在这里插入图片描述

    四、配置环境变量

    1、打开环境变量编辑窗
    在这里插入图片描述
    2、在系统变量中新建一个JAVA_HOME
    变量名:JAVA_HOME
    变量值:上文中 安装JDK 中的第三步所复制的路径(注意去掉最后的 \ )
    在这里插入图片描述
    3、在系统变量中选择Path,点击编辑,然后在后面添加上
    %JAVA_HOME%\bin
    %JAVA_HOME%\jre\bin
    在这里插入图片描述
    4、按win键+R,在输入CMD,在黑窗中输入 java -version 如果出现版本说明JDK安装成功,环境变量配置成功。
    在这里插入图片描述
    在这里插入图片描述
    5、在系统变量中新建一个ANDRID_HOME
    解压Appium中androidsdk压缩包,并复制其路径
    变量名:ANDRID_HOME
    变量值:androidsdk解压所在位置
    在这里插入图片描述

    五、安装Appium

    1、将上文下载的Appium工具文件夹打开,双击Appium-windows-1.15.1.exe文件
    在这里插入图片描述
    2、按图选择第一个然后点击安装按钮
    在这里插入图片描述
    3、等待安装完成,点击完成软件自动打开(没自动打开手动双击打开)
    在这里插入图片描述
    4、更改Appium语言(汉化)
    在这里插入图片描述
    5、点击编辑配置,打开环境变量,分别将环境变量中的ANDROID_HOME,JAVA_HOME路径粘贴到编辑配置中。然后点击保存并重新启动。
    在这里插入图片描述在这里插入图片描述
    6、点击启动服务器,再点击窗口的右上角放大镜,
    在这里插入图片描述
    在这里插入图片描述
    7、点击输入,添加配置文件
    在这里插入图片描述
    8、将Android设备通过USB线连接电脑(电脑此时只能连一个安卓设备)。然后在安卓设备上打开需要测试的软件,然后在电脑上打开CMD,依次输入下面几条命令:

    (注意:一定要将安卓设备上要测的APP打开并首页运行)

    adb devices
    
    • 1
    adb shell getprop ro.build.version.release
    
    • 1
    adb shell dumpsys window w |findstr \/ |findstr name=
    
    • 1

    如下打印:
    adb devices 打印的是设备号
    adb shell getprop ro.build.version.release 打印的是安卓版本号
    adb shell dumpsys window w |findstr / |findstr name= 打印的是所运行的APP包信息
    在这里插入图片描述
    9、按第8步打印的信息更改并粘贴到输入框,点击保存然后点击启动会话。

    (注意:如果Android版本<5.0, “automationName”: “UiAutomator1”,否则 “automationName”: “UiAutomator2”)

    {
      "deviceName": "0*******F",
      "platformName": "Android",
      "platformVersion": "4.4.2",
      "appPackage": "com.android.calculator2",
      "appActivity": "com.android.calculator2.Calculator",
      "automationName": "UiAutomator1"
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    在这里插入图片描述
    10、测试的软件被打开,并显示在Appium上,能够通过使用功能去控制输入,点击等操作。
    在这里插入图片描述

    六、Python 调用Appium

    1、添加Appium-python-client库

    注意库名:Appium-python-client在这里插入图片描述

    2、例如用下面的代码测试

    # 导入webdriver
    from appium import webdriver
    # 初始化参数
    desired_caps = {
        'platformName': 'Android',  # 被测手机是安卓
        'platformVersion': '4.4.2',  # 手机安卓版本
        'deviceName': '"0*********F',  # 设备名,安卓手机可以随意填写
        # cmp=vinno.sportinspect/.SplashScreenActivity
        'appPackage': 'com.android.calculator2',  # 启动APP Package名称
        'appActivity': 'com.android.calculator2.Calculator',  # 启动Activity名称
        'unicodeKeyboard': True,  # 使用自带输入法,输入中文时填True
        'resetKeyboard': True,  # 执行完程序恢复原来输入法
        'noReset': True,  # 不要重置App,如果为False的话,执行完脚本后,app的数据会清空,比如你原本登录了,执行完脚本后就退出登录了
        'newCommandTimeout': 6000,
        'automationName': 'UiAutomator1'
    }
    # 连接Appium Server,初始化自动化环境
    driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps)
    # 退出程序,记得之前没敲这段报了一个错误 Error: socket hang up 啥啥啥的忘记了,有兴趣可以try one try
    # driver.quit()  # 先注释掉,看效果
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20

    参考:Python+Appium从安装到第一个小练习(保姆级别教程)

  • 相关阅读:
    spring boot 配置加载顺序
    上帝视角看Vue源码整体架构+相关源码问答
    MySQL必知必会_第十九~二十三章
    Vscode | Python | launch.json配置gevent多进程断点失效问题处理
    别试错了,是该关注一下软件内在质量了
    计算机网络——传输层
    Android之startActivityForResult过时升级替换方法
    【Liunx】部署MariaDB
    研发必会-异步编程利器之CompletableFuture(上)
    数学建模国赛:python机器学习基础之训练集和测试集拆分、算法精确率评估
  • 原文地址:https://blog.csdn.net/hyd_csdn/article/details/126386030