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

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

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

相关推荐
宝耶2 小时前
面试常问问题:Java基础篇
java·面试·职场和发展
Y1nhl4 小时前
力扣hot100_链表(3)_python版本
python·算法·leetcode·链表·职场和发展
前端 贾公子4 小时前
详解 LeetCode 第 242 题 - 有效的字母组
算法·leetcode·职场和发展
Demons_kirit7 小时前
LeetCode 2799、2840题解
算法·leetcode·职场和发展
雾月558 小时前
LeetCode 1292 元素和小于等于阈值的正方形的最大边长
java·数据结构·算法·leetcode·职场和发展
工头阿乐12 小时前
Appium自动化开发环境搭建
运维·appium·自动化
wuqingshun31415914 小时前
蓝桥杯 4. 卡片换位
算法·职场和发展·蓝桥杯
凯子坚持 c16 小时前
深度解析之算法之分治(快排)
算法·leetcode·职场和发展
浪裡遊20 小时前
Linux常用指令
linux·运维·服务器·chrome·功能测试
石去皿21 小时前
力扣hot100 91-100记录
算法·leetcode·职场和发展