什么是Appium
Appium 是一个开源测试自动化框架,用于原生、 混合和移动 Web 应用程序。它使用 WebDriver 协议驱动 iOS、Android 和 Windows 应用程序。
Appium支持的自动化测试引擎列表
Appium的最新版本(截止Titan笔记发文时的版本号为1.22.0)支持以下的自动化测试引擎
Android
- Espresso
- Selendroid
- UiAutomator
- UiAutomator2 [推荐]
iOS
- iOS 9.3 and above: Apple's XCUITest
- iOS 9.3 and lower: Apple's UIAutomation
Appium的设计理念
- WebDriver是基于HTTP协议的,第一连接会建立一个Session会话、并通过POST请求发送一个JSON数据告知服务端相关测试信息
- Client/Server设计模式
- 通过WebDriver的客户端-服务器协议(称为 JSON Wire Protocol)通讯
- 多语言支持
- 服务端使用Node.JS开发的HTTP服务
- Appium使用Appium-XCUITest-Driver来测试iPhone设备,其中需要安装WebDriverAgent(也称之为 “ WDA ”),是 Facebook 公司的一个项目,来驱动iOS进行测试。
Appium的生态工具
- Android 调试桥 (adb): 是一种功能多样的命令行工具,可让您与设备进行通信
- Appium Desktop:内嵌了Appium Server和Inspector的综合工具
- Appium Server:Appium的核心工具,命令行
- Appium Client:各种语言的客户端封装库,用于连接Appium Server
- 支持的语言有Python、Java、Ruby、RobotFramework-Appium
- AppCrawler:自动遍历工具
Appium依赖环境
- Java 1.8版本
- Android SDK
- Node.JS >= 10,npm >= 6
- Python3
- Appium-Desktop
- Appium Python Client