APPium简介及安装

1 APPium简介

1. 什么是APPium?

APPium是一个开源测试自动化框架,适用于原生、混合或移动Web应用程序的自动化测试工具。 APPium使用WebDriver协议驱动iOS、Android等应用程序。

2. APPium的特点

支持多平台(Android、iOS等)

支持多语言(python、java、ruby、js、c#等)

APPium是跨平台的,可以用在OSX,Windows以及Linux桌面系统上运行。

APPium选择了Client/Server的设计模式。只要client能够发送http请求给server,那么client用什么语言来实现都是可以的,这就是如何做到支持多语言的原因;

APPium基于WebDriver协议,并进行了扩展。这样的好处是可以直接继承WebDriver API,Selenium(WebDriver)各种语言的binding都可以直接拿来使用,省去了为每种语言开发一个client的工作量。

Appium的哲学:不需要重新编译或者修改应用;不被一种语言或者框架约束;不重复造轮子;开源免费

3. APPium工作原理

APPium是C/S架构的。 左边是客户端的测试脚本,中间的APPium server是基于webdriver协议添加对移动设备自动化API扩展而成的。右边的Bootstrap.jar是APPium 在初始化时推送到Android手机上的一个UiAutomator测试脚本;

APPium首先在服务端开启一个监听4723端口的server,接收测试脚本发送过来的对应请求,再将对应的请求发送给中间件Bootstrap.jar;

Bootstrap监听4724端口由APPium发送过来的相关请求,并将请求转换成UiAutomator可以识别的命令发给UiAutomator进行处理,实现自动化测试;

最后Bootstrap将执行的结果返回给APPium Server,APPium Server再将测试结果返回给客户端。

2 安装APPium

安装APPium总体需要以下步骤:安装JDK,Android SDK,APPium-Python-Client包,NodeJS,以及APPium安装包,以下依次介绍各软件的安装过程。

2.1 JDK环境

1.官网下载JDK并安装

下载网址:https://www.oracle.com/java/technologies/javase-downloads.html

2.配置环境变量

验证JDK环境变量已经配置好:

2.2 Android环境

3.官网下载Android SDK

网址:http://tools.android-studio.org/index.php/sdk

  1. 解压缩后,执行SDK Manager.exe 安装 tools, platform-tools,build-tools

设置环境变量

设置ANDROID_HOME路径为Android-SDK的安装目录,并将tools, platform-tools及build-tools添加到环境变量。

4)验证:

2.3 Python环境

4.官网下载python,安装并设置环境变量

a) 下载网址:https://www.python.org/downloads/

b) 安装完成之后配置python环境变量

如下图,设置PYTHON_HOME为Python的安装路径,并将PYTHON_HOME及其路径下的Scripts添加到path环境变量

验证Python环境变量设置成功

  1. 安装python客户端Appium-Python-Client,使用pip命令自动安装:

pip install Appium-Python-Client

2.4 NodeJS安装

下载网址: https://nodejs.org/en/

下载完成后,直接点击应用程序,按照默认选项一键安装。

安装完成之后,添加环境变量

验证nodeJS安装成功


2.5 Appium安装

  1. 官网下载APPium安装包,

下载网址: https://github.com/appium/appium-desktop/releases/tag/v1.20.0

  1. 下载完成后,一键安装

  2. 启动Appium

  3. 设置JDK和Android路径,保存并重启。

重启后,点击"Star Server v1.20.0", 出现如下画面,则表明appium server已经正常启动,可以开始真机测试了

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!

相关推荐
Seven 7 Chihiro39 分钟前
软件测试之非功能测试设计
功能测试
LCG元7 小时前
【面试问题】JIT 是什么?和 JVM 什么关系?
面试·职场和发展
美团测试工程师11 小时前
九大高效的前端测试工具与框架
软件测试·测试工具·jmeter
m0_7482455211 小时前
吉利前端、AI面试
前端·面试·职场和发展
kkflash315 小时前
提升专业素养的实用指南
学习·职场和发展
sinat_3070215316 小时前
大数据政策文件——职业道德(山东省大数据职称考试)
大数据·职场和发展
GPT012317 小时前
大模型日报 2024-12-20
程序人生
测试者家园17 小时前
ChatGPT生成接口文档的方法与实践
软件测试·chatgpt·测试用例·接口测试·接口文档·ai赋能·用chatgpt做软件测试
Sudo_Wang19 小时前
力扣150题
算法·leetcode·职场和发展
Heaven64519 小时前
6.8 Newman自动化运行Postman测试集
软件测试·自动化·接口测试·postman·newman