一.移动自动化测试的技术体系
-
UI 自动化分类
-
Web 自动化:Selenium
-
App 自动化:Appium
-
GUI 自动化:Windows、Mac
-
微信小程序自动化:App + Web 测试技术的外延形态
-
-
自动化测试框架选择
-
推荐Appium
-
跨语言:Java、Python、Node.js 等
-
跨平台:Android、iOS、Windows、Mac
-
底层多引擎可切换
-
生态丰富,社区强大(testerHome)
-
-
Android: Robotium、UI Automator、UI Automator2
-
特色框架:calabash、Macaca、ATX
-
二.准备工作
- Appium 简介
- Appium 是一个开源的、跨平台的测试框架,可以用来测试 Native App、混合应用、移动 Web 应用(H5 应用)等,也是当下互联网企业实现移动自动化测试的重要工具。
- Appium、Appium-desktop、Appium Client 的区别是 Appium 体系的核心,因为它本身也是一个 web 接口服务,所以也会被成为 appium server,对外默认开启包括 4723 等多个端口。
- Appium-Desktop:是为了让 Appium 能够更好用,让小白入门更容易,让调试和界面分析更方便,官方开发了 GUI 的工具 Appium-desktop。
-
Appium Client:Appium 只是一个 Web 接口,他接受 HTTP 请求,所以各个语言都可以自己封装发送请 求,于是就有 appium 下的各个子项目。以下是各语言对 Appium Client 做的支持。
-
Appium 的设计理念
- Appium 引擎列表
- Appium 的安装 (Mac 版)
- npm 方式安装 (官方安装,国际通用,网络不稳定,不建议使用此方式安装)
> brew install node # get node.js > npm install -g appium # get appium
- cnpm 方式安装 (推荐)
- npm install -g cnpm --registry=https://registry.npm.taobao.org
- cnpm install -g appium
- pip3 install Appium-Python-Client
- npm 方式安装 (官方安装,国际通用,网络不稳定,不建议使用此方式安装)
-
注意事项
-
pip 问题:由于mac系统默认安装了python2.7且pip已经不对python2进行管理
-