Python+Appium2.0的APP自动化环境搭建

简介: Python+Appium2.0的APP自动化环境搭建

一、前置说明


Appium 是一个用于自动化移动应用程序的开源测试框架。它支持多种移动平台,包括 Android 和 iOS,同时允许使用多种编程语言(如 Java、Python、JavaScript 等)进行测试脚本的编写。

本文针对 Windows 环境下,使用 Python + Appium 对 Android 设备进行自动化测试的环境搭建进行说明。


二、操作步骤


1、安装 Node.js

Appium 由 nodejs 实现,必须安装 node 解释器。

官方下载地址:https://nodejs.org/en

image.png

2、安装 Appium

在命令行执行命令:

npm i --location=global appium

在命令行执行命令,启动 appium server:

appium

image.png

关闭窗口,即可退出 appium server。

3、安装 JDK

Android SDK 依赖于 Java Development Kit(JDK)来执行。Android 开发工具(如 adbdxaapt 等)是用 Java 编写的,因此 JDK 是 Android 开发环境的一部分。

下载地址:https://www.oracle.com/java/technologies/downloads/

image.png

安装完成后,设置环境变量:

JAVA_HOME=C:\Program Files\Java\jdk-21
%JAVA_HOME%\bin
%JAVA_HOME%\jre\bin

4、安装 Android SDK

Appium Server 使用 ADB 与 Android 设备进行通信,ADB 是 Android SDK 的一部分,用于管理设备、安装应用程序、推送文件等,因此需要安装 Android SDK。

下载 SDK Manager:https://www.androiddevtools.cn/

image.png

运行 SDK Manager,下载工具包:

image.png

image.png

image.png

image.png

安装完成后,设置环境变量:

ANDROID_HOME=D:\ProgramFiles\Android\android-sdk
%ANDROID_HOME%\platform-tools
%ANDROID_HOME%\tools
%ANDROID_HOME%\build-tools\29.0.3

5、安装 UiAutomator2 Driver

UiAutomator 是一个由 Google 提供的用于测试 Android 应用程序的框架,它可以与设备或模拟器进行交互,模拟用户的输入和触摸操作。Appium 使用 UiAutomator 作为底层的自动化引擎,因此需要安装 UiAutomator。UiAutomator2 驱动程序目前由 Appium 团队维护,因此可以使用 appium 命令来安装。

执行命令:

appium driver install uiautomator2

6、安装模拟器

推荐使用夜神模拟器,下载地址:https://www.yeshen.com/

image.png

开启开发者模式,参考:https://support.yeshen.com/zh-CN/often/kfz

复制 Android SDK 的 platform-tools 中的 adb.exe 至桌面,重命名为 nox_adb.exe,替换夜神模拟器 bin 目录中的 nox_adb.exe 文件。

7、安装 python 环境

推荐使用 Ananonda 安装 python 环境。Anaconada 是 python 的开源发行版,包含了 Python 解释器以及许多常用的 Python 包,Anaconda 可创建和管理不同的 Python 环境。

官方下载地址:https://www.anaconda.com/download

image.png

也可使用清华大学开源软件镜像站来安装:https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/

设置环境变量:

ANACONDA_HOME=D:\ProgramFiles\anaconda3
%ANACONDA_HOME%
%ANACONDA_HOME%\Scripts
%ANACONDA_HOME%\Library\mingw-w64\bin
%ANACONDA_HOME%\Library\usr\bin
%ANACONDA_HOME%\Library\bin

9、安装 Appium-Python-Client

执行命令:

pip install Appium-Python-Client -i http://pypi.douban.com/simple --trusted-host pypi.douban.com

10、安装 IDE 工具

推荐使用 pycharm 作为 python 的 IDE 开发工具。

官网下载地址:https://www.jetbrains.com/pycharm/


三、Demo 验证


编写 appium 的第一个 python 自动化脚本,来验证环境搭建是否成功。

1、启动 appium server

命令行执行:

appium

image.png

2、启动模拟器并开启远程调试

启动夜神模拟器:

image.png

开启远程调试:

adb kill-server
adb start-server
adb connect 127.0.0.1:62001
adb devices

3、测试脚本

测试脚本 github 下载地址:test_appium.py

from appium import webdriver
from appium.options.android import UiAutomator2Options
appium_server_url = 'http://localhost:4723'
capabilities = {
    'platformName': 'Android',
    'automationName': 'uiautomator2',
    'deviceName': '127.0.0.1:62001',
    'appPackage': 'com.android.settings',
    'appActivity': '.Settings',
}
capabilities_options = UiAutomator2Options().load_capabilities(capabilities)
def test_driver():
    webdriver.Remote(command_executor=appium_server_url, options=capabilities_options)

脚本测试成功,模拟器自动打开设置窗口:

image.png

image.png

相关实践学习
AnalyticDB PostgreSQL 企业智能数据中台:一站式管理数据服务资产
企业在数据仓库之上可构建丰富的数据服务用以支持数据应用及业务场景;ADB PG推出全新企业智能数据平台,用以帮助用户一站式的管理企业数据服务资产,包括创建, 管理,探索, 监控等; 助力企业在现有平台之上快速构建起数据服务资产体系
目录
相关文章
|
7月前
|
JSON 监控 数据格式
1688 item_search_app 关键字搜索商品接口深度分析及 Python 实现
1688开放平台item_search_app接口专为移动端优化,支持关键词搜索、多维度筛选与排序,可获取商品详情及供应商信息,适用于货源采集、价格监控与竞品分析,助力采购决策。
|
7月前
|
缓存 监控 Android开发
京东 item_get_app 接口深度分析及 Python 实现
京东item_get_app接口可获取商品原始详情数据,包含更丰富的字段和细节,适用于电商分析、价格追踪等场景。需通过认证获取权限,支持字段筛选和区域化数据查询。
|
8月前
|
缓存 数据挖掘 API
淘宝 item_get_app 接口深度分析及 Python 实现
淘宝item_get_app接口是淘宝开放平台提供的移动端商品详情数据获取接口,相较PC端更贴近APP展示效果,支持获取APP专属价格、促销活动及详情页结构,适用于电商导购、比价工具、数据分析等场景。接口采用appkey+appsecret+session认证机制,需申请相应权限。本文提供Python调用示例及使用注意事项,帮助开发者高效对接移动端商品数据。
|
11月前
|
数据采集 存储 Web App开发
逆向音乐APP:Python爬虫获取音乐榜单
逆向音乐APP:Python爬虫获取音乐榜单
701 58
|
7月前
|
缓存 供应链 开发者
1688 item_get_app 接口深度分析及 Python 实现
1688平台item_get_app接口专为移动端设计,提供商品原始详情数据,包含批发价格、起订量、供应商信息等B2B特有字段,适用于采购决策、供应链分析等场景。接口需通过appkey+access_token认证,并支持字段筛选,返回结构化数据,助力企业实现智能采购与供应商评估。
|
9月前
|
数据安全/隐私保护 Python
抖音私信脚本app,协议私信群发工具,抖音python私信模块
这个实现包含三个主要模块:抖音私信核心功能类、辅助工具类和主程序入口。核心功能包括登录
|
Python
自动化微信朋友圈:Python脚本实现自动发布动态
本文介绍如何使用Python脚本自动化发布微信朋友圈动态,节省手动输入的时间。主要依赖`pyautogui`、`time`、`pyperclip`等库,通过模拟鼠标和键盘操作实现自动发布。代码涵盖打开微信、定位朋友圈、准备输入框、模拟打字等功能。虽然该方法能提高效率,但需注意可能违反微信使用条款,存在风险。定期更新脚本以适应微信界面变化也很重要。
1397 61
自动化微信朋友圈:Python脚本实现自动发布动态
|
存储 监控 API
【Azure App Service】分享使用Python Code获取App Service的服务器日志记录管理配置信息
本文介绍了如何通过Python代码获取App Service中“Web服务器日志记录”的配置状态。借助`azure-mgmt-web` SDK,可通过初始化`WebSiteManagementClient`对象、调用`get_configuration`方法来查看`http_logging_enabled`的值,从而判断日志记录是否启用及存储方式(关闭、存储或文件系统)。示例代码详细展示了实现步骤,并附有执行结果与官方文档参考链接,帮助开发者快速定位和解决问题。
332 22
|
Java 测试技术 持续交付
【入门思路】基于Python+Unittest+Appium+Excel+BeautifulReport的App/移动端UI自动化测试框架搭建思路
本文重点讲解如何搭建App自动化测试框架的思路,而非完整源码。主要内容包括实现目的、框架设计、环境依赖和框架的主要组成部分。适用于初学者,旨在帮助其快速掌握App自动化测试的基本技能。文中详细介绍了从需求分析到技术栈选择,再到具体模块的封装与实现,包括登录、截图、日志、测试报告和邮件服务等。同时提供了运行效果的展示,便于理解和实践。
1251 4
【入门思路】基于Python+Unittest+Appium+Excel+BeautifulReport的App/移动端UI自动化测试框架搭建思路
|
敏捷开发 测试技术 持续交付
自动化测试之美:从零开始搭建你的Python测试框架
在软件开发的马拉松赛道上,自动化测试是那个能让你保持节奏、避免跌宕起伏的神奇小助手。本文将带你走进自动化测试的世界,用Python这把钥匙,解锁高效、可靠的测试框架之门。你将学会如何步步为营,构建属于自己的测试庇护所,让代码质量成为晨跑时清新的空气,而不是雾霾中的忧虑。让我们一起摆脱手动测试的繁琐枷锁,拥抱自动化带来的自由吧!

热门文章

最新文章

推荐镜像

更多
下一篇
开通oss服务