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推出全新企业智能数据平台,用以帮助用户一站式的管理企业数据服务资产,包括创建, 管理,探索, 监控等; 助力企业在现有平台之上快速构建起数据服务资产体系
目录
相关文章
|
11月前
|
安全 JavaScript 开发者
Python 自动化办公神器|一键转换所有文档为 PDF
本文介绍一个自动化批量将 Word、Excel、PPT、TXT、HTML 及图片转换为 PDF 的 Python 脚本。支持多格式识别、错误处理与日志记录,适用于文档归档、报告整理等场景,大幅提升办公效率。仅限 Windows 平台,需安装 Office 及相关依赖。
563 0
|
9月前
|
存储 数据采集 监控
Python定时爬取新闻网站头条:从零到一的自动化实践
在信息爆炸时代,本文教你用Python定时爬取腾讯新闻头条,实现自动化监控。涵盖请求、解析、存储、去重、代理及异常通知,助你构建高效新闻采集系统,适用于金融、电商、媒体等场景。(238字)
1507 2
|
10月前
|
监控 测试技术 API
n8n自动化测试教程 (1):环境搭建与初识n8n
n8n是一款开源、可视化的工作流自动化工具,测试工程师可通过拖拽节点快速构建API测试流程,实现测试编排、数据管理、自动化监控与告警等功能,提升测试效率与覆盖率。
|
10月前
|
数据采集 监控 Shell
无需Python:Shell脚本如何成为你的自动化爬虫引擎?
Shell脚本利用curl/wget发起请求,结合文本处理工具构建轻量级爬虫,支持并行加速、定时任务、增量抓取及分布式部署。通过随机UA、异常重试等优化提升稳定性,适用于日志监控、价格追踪等场景。相比Python,具备启动快、资源占用低的优势,适合嵌入式或老旧服务器环境,复杂任务可结合Python实现混合编程。
|
12月前
|
存储 数据采集 数据可视化
Python自动化分析知网文献:爬取、存储与可视化
Python自动化分析知网文献:爬取、存储与可视化
|
12月前
|
数据采集 存储 监控
Python爬虫自动化:定时监控快手热门话题
Python爬虫自动化:定时监控快手热门话题
|
测试技术 Python
Appium自动化框架从0到1之 执行测试用例& 生成测试报告&发送邮件
Appium自动化框架从0到1之 执行测试用例& 生成测试报告&发送邮件
476 1
|
测试技术 API Python
Appium控件交互策略:优化自动化测试效率的关键方法
该文介绍了如何使用Selenium与APP进行交互,包括点击、输入和状态判断等操作。例如,通过element.click()点击控件,element.send_keys()输入文本,以及element.is_displayed()检查元素是否可见。还展示了如何获取元素属性,如resource-id、text和class,并提供了Python代码示例来定位并操作APP元素,如滑动条的显示、可点击性检测及点击滑动条中心位置。在编写测试脚本时,应注意元素定位和状态验证以确保测试稳定性。
|
Web App开发 小程序 Android开发
Appium微信小程序自动化环境准备
Appium微信小程序自动化环境准备
1096 1
|
Java 测试技术 持续交付
【入门思路】基于Python+Unittest+Appium+Excel+BeautifulReport的App/移动端UI自动化测试框架搭建思路
本文重点讲解如何搭建App自动化测试框架的思路,而非完整源码。主要内容包括实现目的、框架设计、环境依赖和框架的主要组成部分。适用于初学者,旨在帮助其快速掌握App自动化测试的基本技能。文中详细介绍了从需求分析到技术栈选择,再到具体模块的封装与实现,包括登录、截图、日志、测试报告和邮件服务等。同时提供了运行效果的展示,便于理解和实践。
1390 4
【入门思路】基于Python+Unittest+Appium+Excel+BeautifulReport的App/移动端UI自动化测试框架搭建思路

热门文章

最新文章

推荐镜像

更多