版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/p106786860/article/details/79766649
一、什么是Appium
- 一个自动化测试开源工具;
- 支持Android和IOS平台原生应用、移动Web应用和混合应用;
- 一个跨平台的工具,允许测试人员使用同样的接口基于不同的平台(Andorid,IOS)写自动化测试脚本;
二、Appinum的理念
- 无需为了自动化,而重新编译或者修改我们的应用(黑盒测试);
- 不必局限于某种语言或者框架来写和运行测试脚本;
- 不应该在接口上重复造轮子(移动自动化接口统一);
- 开源;
三、Appium的设计
- 真正的工作引擎其实是第三方自动化框架,不需要再引用中植入Appium和第三方代码;
- 这些第三方框架封装成一套API-WebDriver API,指定了客户端到服务端的协议,可以使用任何语言来编写客户端,向服务端发送恰当的HTTP请求;
- 扩充了WebDriver的协议,在原有的基础上添加移动自动化相关的API方法;
四、Appinum概念
- C/S架构:核心是一个Web服务器,提供一套REST接口,收到客户端的连接、监听的命令、在移动设备上执行这些命令,将执行结果在HTTP响应中返回客户端;
- Session:自动化总是在一个Session上下文中运行,客户端初始化一个和服务端交互的Session,服务端开始一个自动化Session,返回一个Session ID,客户端用这个ID发送后续的命令;
- Desired Capabilities:一些键值对集合,客户端将这些键值对发送给服务端,告诉服务端要启动怎么样的自动化Session,如启动Android或IOS Session;
- Appium Server:用nodejs写的,可以用源码编译或者从NPM直接安装;
- Appium服务端:有很多语言库Java、Ruby、Python、PHP、JavaScript和C#等,实现了Appinum对WebDriver协议的扩展;
- Appium.app,Appinum.exe:提供了GUI封装的Appium Server下载,封装了运行Appium Sever所有依赖元素,包含了一个Inspector工具,检查应用元素的层级;
1.新技术,新未来!尽在1024工场。时刻关注最前沿技术资讯,发布最棒技术博文!(甭客气!尽情的扫描或者长按!)