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自动化了

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

相关推荐
2501_915106328 小时前
Xcode 上传 ipa 全流程详解 App Store 上架流程、uni-app 生成 ipa 文件上传与审核指南
android·macos·ios·小程序·uni-app·iphone·xcode
他们都不看好你,偏偏你最不争气12 小时前
【iOS】AFNetworking
开发语言·macos·ios·objective-c
钟念14 小时前
【打包app】uniapp打包ios端和安卓端app
macos·objective-c·cocoa
森之鸟1 天前
Mac电脑上如何打印出字体图标
前端·javascript·macos
m_136871 天前
Mac M 系列芯片 YOLOv8 部署教程(CPU/Metal 后端一键安装)
yolo·macos
搜狐技术产品小编20232 天前
CAEmitterLayer:iOS 中创建炫酷粒子效果的魔法工具
macos·ios·objective-c·cocoa
M-finder2 天前
Mac菜单栏综合工具FancyTool更新啦
mac·swift
未来之窗软件服务2 天前
操作系统应用开发(七)mac苹果模拟器——东方仙盟练气期
macos·仙盟创梦ide·东方仙盟·系统模拟器
liliangcsdn2 天前
Mac本地docker安装Kibana+ElasticSearch
elasticsearch·macos·docker
千寻简2 天前
远程连接Mac操作ClaudeCode一直提示登录Invalid API key · Please run /login
macos