当前位置: 首页 > news >正文

Windows上使用Python 3.10结合Appium-实现APP自动化

一、准备工作

所需条件:
Windows 10/11 操作系统
Python 3.10.x(建议3.10.9)
Java JDK 8 或以上(建议JDK 8u301)
Node.js 14.x 或以上(建议14.21.3)
Appium Server 1.22.x 或以上(建议1.22.3)
Appium Python客户端(最新稳定版)
夜神模拟器(最新版,建议7.0及以上)
安卓手机(Android 7.0及以上,开启USB调试)
Android SDK Platform-tools(包含adb工具)
PyCharm 2022.x 或以上
注意事项:夜神模拟器需开启硬件虚拟化(VT-x/AMD-V)安卓手机需开启开发者选项和USB调试确保adb能识别设备(adb devices)Appium版本和Python客户端版本兼容元素定位建议使用Appium Desktop Inspector辅助自动化操作节奏合理,避免触发APP防刷机制

二、环境搭建

1. 安装Java JDK 8

下载地址:https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html
安装完成后配置环境变量:JAVA_HOME 指向JDK安装目录,例如 C:\Program Files\Java\jdk1.8.0_301将 %JAVA_HOME%\bin 添加到系统PATH验证安装:java -version应显示Java版本信息。

2. 安装Android SDK Platform-tools(包含adb)

下载地址:https://developer.android.com/studio/releases/platform-tools
解压后将platform-tools目录添加到系统PATH
验证:adb version应显示adb版本。

3. 安装Node.js

下载地址:https://nodejs.org/en/download/
安装完成后验证:node -vnpm -v
推荐安装14.x版本,稳定兼容Appium。

4. 安装Appium Server

通过npm安装:npm install -g appium@1.22.3appium -v
可选安装Appium Desktop(GUI工具,方便元素定位):
https://github.com/appium/appium-desktop/releases

5. 安装Python 3.10

下载地址:https://www.python.org/downloads/release/python-3109/
安装时勾选“Add Python to PATH”
验证:python --version

6. 安装Appium Python客户端

国内访问PyPI官方源速度较慢,推荐使用清华、阿里云等镜像源。结合指定版本安装命令示例如下:
打开命令行,执行:pip install Appium-Python-Client==2.10.4 -i https://pypi.tuna.tsinghua.edu.cn/simple或者使用阿里云镜像:pip install Appium-Python-Client==2.10.4 -i https://mirrors.aliyun.com/pypi/simple/

7. 安装PyCharm
下载地址:https://www.jetbrains.com/pycharm/download/
安装并配置Python 3.10解释器
开发代码使用,方便
8. 准备夜神模拟器或安卓手机

夜神模拟器官网下载最新版:https://www.yeshen.com/
启动模拟器,确认能正常运行
安卓手机开启“开发者选项”->“USB调试”
连接手机到电脑,允许调试授权
验证设备连接:adb devices
应显示设备列表

三、元素定位演示
启动Appium Desktop,连接Appium Server(默认地址:http://127.0.0.1:4723)
在Appium Desktop点击“Start Inspector Session”
配置desired capabilities,示例:

{"platformName": "Android","deviceName": "emulator-5554","appPackage": "com.example.app","appActivity": ".MainActivity","automationName": "UiAutomator2","noReset": true
}

启动会话后,Appium Desktop会显示当前APP界面及元素树
点击界面元素,查看元素属性(id、xpath、class等)
记录需要操作的元素定位信息,方便脚本编写

四、代码编写与运行测试(PyCharm开发)

  1. 新建PyCharm项目,配置Python 3.10解释器
  2. 编写示例代码 app_automation.py
from appium import webdriver
from appium.webdriver.common.mobileby import MobileBy
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as ECdef main():desired_caps = {"platformName": "Android","platformVersion": "10",  # 根据模拟器或手机版本调整"deviceName": "emulator-5554",  # adb devices显示的设备名"appPackage": "com.example.app",  # 目标APP包名"appActivity": ".MainActivity",   # 目标APP启动Activity"automationName": "UiAutomator2","noReset": True}driver = webdriver.Remote("http://localhost:4723/wd/hub", desired_caps)wait = WebDriverWait(driver, 20)try:# 等待按钮出现并点击start_btn = wait.until(EC.element_to_be_clickable((MobileBy.ID, "com.example.app:id/start_button")))start_btn.click()# 等待输入框出现,输入文本input_box = wait.until(EC.presence_of_element_located((MobileBy.ID, "com.example.app:id/input_text")))input_box.send_keys("Hello Appium")# 点击提交按钮submit_btn = driver.find_element(MobileBy.ID, "com.example.app:id/submit_button")submit_btn.click()finally:driver.quit()if __name__ == "__main__":main()

3. 运行测试
启动Appium Server(命令行输入appium)
启动夜神模拟器或连接手机
确认adb devices能识别设备
在PyCharm运行app_automation.py
观察APP自动化操作执行
五、总结

步骤说明
环境准备安装Java JDK 8、Android SDK、Node.js、Appium、Python 3.10
设备准备启动夜神模拟器或连接手机,开启USB调试
环境准备安装Java JDK 8、Android SDK、Node.js、Appium、Python 3.10
元素定位使用Appium Desktop Inspector抓取元素定位信息
脚本编写配置desired_caps,编写自动化操作脚本
运行测试启动Appium Server,执行Python脚本
注意事项保持设备连接稳定,合理等待,避免频繁操作

相关文章:

  • Apache Flink 深度解析:流处理引擎的核心原理与生产实践指南
  • 2025.04.23华为机考第一题-100分
  • 数据库1个
  • Vue3速通笔记
  • QT软件安装(12)
  • VBA批量读取access数据库(.mdb)
  • 淘宝平台关键字搜索接口接入指南(含代码示例及商品标题解析)
  • 机器学习分类算法详解:原理、应用场景与测试用例
  • 海思SDK的sensor驱动框架
  • Linux423 删除用户
  • 第六章:Multi-Backend Configuration
  • 【Redis】redis主从哨兵
  • 测试基础笔记第十天
  • cgdb的基础使用教程
  • 夏季跑步注意
  • 数据库--页(page)
  • UniOcc:自动驾驶占用预测和预报的统一基准
  • CPP_类和对象
  • 智能外呼系统的技术演进与多场景落地实践
  • 【k8s】LVS/IPVS的三种模式:NAT、DR、TUN
  • 神舟二十号载人飞船成功飞天,上海航天有何贡献?
  • 魔都眼·上海车展①|开幕首日:首发首秀近百款新车
  • 体坛联播|曼城击败维拉迎英超三连胜,巴萨遭遇魔鬼赛程
  • 匈牙利总理投票反对乌克兰加入欧盟
  • 【社论】上海车展40年,见证了什么
  • 亚振家居半年内第二次筹划变更控制权:控股股东正与收购方商谈交易核心条款