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已经正常启动,可以开始真机测试了

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

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

相关推荐
不会就选b1 小时前
算法日常・每日刷题--<动态规划>19
算法·leetcode·职场和发展
考研保研资料分享2 小时前
新闻传播保研经验:中传预推免面试、广告学代表作与实习准备(2025)
面试·职场和发展
夏幻灵4 小时前
每日一题:LeetCode 165:比较版本号
算法·leetcode·职场和发展
j7~9 小时前
【软件测试】(用例篇)
软件测试·测试用例·测试用例的设计方法·场景设计·错误猜测法·测试用例的粒度和评价
Nil20810 小时前
leetcode 300最长递增子序列
算法·leetcode·职场和发展
2302_8057710710 小时前
Day20:实战:接口自动化测试框架封装之一------接口关联封装
功能测试·自动化·测试用例
考研保研资料分享11 小时前
通信工程保研经验合辑:北航、北理工申请与夏令营、预推免面试(2025)
面试·职场和发展
熊猫钓鱼>_>11 小时前
大学图论第 6 讲:网络流与二分图匹配——对偶性让瓶颈自己现形
开发语言·算法·面试·职场和发展·图论·校招·面经
杨逢昌工厂6S管理12 小时前
116——杨逢昌:归位三定闭环法的旺季轻量化执行方案与工具清单
经验分享·笔记·职场和发展·学习方法