目录
分享一下如何在mac电脑上搭建一个完整的appium自动化测试环境
准备工作
前期需要准备的设备和账号:
- mac电脑一台
- iphone一台
- 苹果开发者账号一个 (需要你具备一点基础的iOS开发相关的常识)
安装必需的软件
安装appium
appium的安装没有什么可多说的,按照官方 https://appium.io/# 的指导安装就好了
$ brew install node # get node.js
$ npm install -g appium # get appium
$ npm install wd # get appium client
安装完成之后检查一下是否安装成功。后续在使用的过程中直接使用appium的命令行工具,桌面版也可以用但是没有命令行用着简介,而且桌面版还消耗电脑内存,mac电脑本身内存就比较珍贵
$ appium --version
1.22.0
安装XCode
mac电脑一般都自带xcode工具,没有的可以去appstore里面安装一个最新版本即可
下载WDA工程
什么是WDA?
借用官网的一段解释:WebDriverAgent is a WebDriver server implementation for iOS that can be used to remote control iOS devices. It allows you to launch & kill applications, tap & scroll views or confirm view presence on a screen. This makes it a perfect tool for application end-to-end testing or general purpose device automation.
WDA其实就是代理iphone开放一些可用的能力和接口给外界提供自动化的这么一个工具
GitHub - appium/WebDriverAgent: A WebDriver server for iOS and tvOS
查找自己所需的WDA的版本,选择下载源码工程(WDA和appium和xcode的版本的对应关系后再补充,一般都选择最新版本基本就可以匹配)
下载后的源码先保存到一个固定的位置,然后解压进入到工程文件夹呢,双击xcodeproj这个文件即可启动xcode工程
配置WDA工程
前面章节的图里已经提到了我们使用appium做iOS的自动化,需要在手机上面运行wda这个工程(确切的说是个服务)
所谓的配置wda工程,其实主要的目的就是为了让wda这个工程可以在我们的目标测试机上运行起,下面的流程和ios开发人员配置一个测试包在自己的测试机上跑起来是一个道理,这里只介绍流程详细原理可以参考ios的开发流程
wda是个ios工程,它有自己的BundleId, com.facebook.WebDriverAgentRunner, 我们也可以自己给它重新申请个新的BundleId, 所以前面的前期准备工作我们提到了我们需要一个苹果开发者账号,我们可以把wda的BundleId注册到当前的开发者Team账号上,然后测试用的iPhone手机也需要加到当前开发者账号的内测名单里面,这样wda工程就可以跑在我们的iPhone测试机上了
下面是具体的工程配置流程