macos搭建appium-iOS自动化测试环境

目录

准备工作

安装必需的软件

安装appium

安装XCode

下载WDA工程

配置WDA工程

搭建appium+wda自动化环境

第一步:启动通过xcodebuild命令启动wda服务


分享一下如何在mac电脑上搭建一个完整的appium自动化测试环境

准备工作

前期需要准备的设备和账号:

  • mac电脑一台
  • iphone一台
  • 苹果开发者账号一个 (需要你具备一点基础的iOS开发相关的常识)

安装必需的软件

安装appium

appium的安装没有什么可多说的,按照官方 https://appium.io/#的指导安装就好了

Appium · GitHub

bash 复制代码
$ brew install node # get node.js

$ npm install -g appium # get appium

$ npm install wd # get appium client

安装完成之后检查一下是否安装成功。后续在使用的过程中直接使用appium的命令行工具,桌面版也可以用但是没有命令行用着简介,而且桌面版还消耗电脑内存,mac电脑本身内存就比较珍贵

bash 复制代码
$ 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测试机上了

下面是具体的工程配置流程

此时手机上我们应该能看到安装了一个webdriveragent的APP

至此已经完成了wda的配置和运行,然后停掉Test工程,或者关闭xcode即可。因为我们后面使用wda做自动化不建议直接用xcode桌面版来启动wda.(哦,前面忘记提了,如果使用appium+wda做iOS的自动化,这两个工程是需要一直启动着的)

搭建appium+wda自动化环境

根据上面的解释,如果appium想和iPhone进行交互,需要借助wda这个工具,前提是我们必须得用xcode在本机mac开一个代理端口作为appium和wda交互的通信端口,上面提到的8100端口就是这个通信端口。我们刚刚也说了我们不希望在自动化的时候一直开着xcode桌面版本,好在xcode还提供了命令行工具xcodebuild (xcodebuild工具的安装和配置可自行baidu或者google)

第一步:启动通过xcodebuild命令启动wda服务

bash 复制代码
$ xcodebuild -project /Users/apple/Documents/WebDriverAgent-4.13.2/WebDriverAgent.xcodeproj -scheme WebDriverAgentRunner -destination 'id=00008030-001245810ED0802E' USE_PORT=8104 test

参数说明:

-project # 我们上线下载并在xcode配置好的wda工程的工程启动文件WebDriverAgent.xcodeproj

-scheme WebDriverAgentRunner

-destination 'id=00008030-001245810ED0802E' # 目标iPhone,前提是已经通过usb链接到本地mac

USE_PORT=8104 test # 本机mac开放的appium和wda通信的端口,默认是8100,我们也可以自行指定

目录

准备工作

安装必需的软件

安装appium

安装XCode

下载WDA工程

配置WDA工程

搭建appium+wda自动化环境

第一步:启动通过xcodebuild命令启动wda服务

第二步:启动appium服务


bash 复制代码
$ appium -p 8904  --webdriveragent-port=8104

参数说明:

-p 8904 # appium开放给测试脚本使用的端口

--webdriveragent-port=8104 # 上面xcodebuild开放给appium和wda通信的端口

至此整个环境就配置完了,下面就可以通过本机的8904端口进行appium的UI自动化了

未尽事宜会在其它文章中继续补充

相关推荐
我命由我123451 天前
Mac 操作系统 - 一些使用记录
运维·windows·学习·系统安全·运维开发·mac·学习方法
黑化旺仔2 天前
【OC】KVO
macos·ios·objective-c·cocoa
Liekkas Kono2 天前
macOS 27 安装 VMware Fusion 和 Win11 经验
macos·win11·vmware
shark-chili4 天前
关于AI辅助编程的认知
数据库·人工智能·redis·macos·缓存
zwd20054 天前
Mac 上写英文遇到不会的词,有哪些工具?输入法、翻译软件、写作助手怎么选
人工智能·macos·效率工具·英语写作·输入法·deepl·翻译工具
33三 三like4 天前
Jx-Mac 本地部署过程总结
macos
大象AI共学5 天前
想在手机上读 Obsidian?Mac → iPhone / 安卓的零成本方案
macos·智能手机·iphone
倔强的小石头_6 天前
把 Mac mini 变成远程 AI 工作台:OpenClaw + 飞书 + cpolar 实战
飞书·mac·openclaw
sysinside6 天前
如何创建可引导的 macOS Golden Gate 27 安装介质
macos
Dr.Buho6 天前
macOS 27 升级教程:兼容机型、三种安装方法与降级提示
经验分享·macos