使用Appium在iOS上实现自动化

安装 Appium

bash 复制代码
npm install -g appium

检测 Appium 是否安装成功

bash 复制代码
appium --version

安装 Appium Doctor

bash 复制代码
npm install appium-doctor -g

安装 ios 测试驱动

bash 复制代码
appium driver install xcuitest

检测 iOS 环境是否正常

bash 复制代码
appium-doctor --ios

安装 ideviceinstaller

bash 复制代码
brew install ideviceinstaller

查询设备 udid

使用 USB 链接好 iPhone,使用以下命令查询设备 udid

bash 复制代码
idevice_id -l
# 例如,这些输出以下内容:
# 00000030-0018581E1E43402E

安装 WebDriverAgent

WebDriverAgent 是一个用于测试 iOS 应用的开源项目,它提供了一套完整的测试工具,用于测试 iOS 应用,最早由 facebook 开发,目前由appium 社区维护。

下载&签名

打开 WebDriverAgent 仓库下载源码到本地,并进入到 WebDriverAgent 目录下,使用 Xcode 打开 WebDriverAgent.xcodeproj 文件,对项目重新签名。

打开项目,在 Targets -> WebDriverAgentRunner -> General -> Signing -> Team,修改 Bundel Identifier, 解决重名问题,

Team 选择自己或者加入的团队,勾选 Automatically manage signing。

Targets 下的其他几个,如 WebDriverAgetLib, 也执行同样操作。

运行

在 Xcode 中,中间顶部,左侧选择 WebDriverAgentRunner,右侧选择运行的设备,然后点击 Products -> Test。

此时将在手机上安装 WebDriverAgentRunner App,

首次运行会出现以下错误提示:

Unable to launch com.facebook.WebDriverAgentRunner.zacksleo.xctrunner, 如图所示

这是因为私有证书需要在手机上勾选允许,然后进入手机"设置",打开 "通用",找到"VPN与设备管理",最下方找到 "开发者APP" 下面的证书,点开后选择信任 Apple Development:...,弹窗选择信任。

打开刚安装的这个名为 WebDriverAgentRunner 的 App,启动客户端代理,然后在电脑命令行中运行 Appium,启动 Appium 服务。

bash 复制代码
appium

编写测试代码,运行测试用例:

bash 复制代码
node test.js

参考资料

相关推荐
2501_916007477 小时前
iOS 混淆与团队协作,研发、安全、运维、测试如何在加固流程中高效配合(iOS 混淆、ipa 加固、协作治理)
android·ios·小程序·https·uni-app·iphone·webview
鱼鱼说测试8 小时前
Selenium+python自动化1-环境搭建
python·selenium·自动化
llm2009099 小时前
UI自动化框架之Selenium八大元素定位(二)
selenium·ui·自动化
zzywxc7879 小时前
AI 开发工具全景指南:从编码辅助到模型部署的全流程实践
大数据·人工智能·低代码·机器学习·golang·自动化·ai编程
Brian Xia10 小时前
Social-Auto-Upload - 多平台社交媒体视频自动化上传工具
自动化·音视频·媒体
HarderCoder10 小时前
Swift 6.1 `withTaskGroup` & `withThrowingTaskGroup` 新语法导读
ios·swift
HarderCoder10 小时前
Swift 并发:Actor、isolated、nonisolated 完全导读
ios·swift
贝多财经12 小时前
OPPO手机“绿线”问题争议,高价等于高端,何以分食iPhone市场?
ios·智能手机·iphone
守城小轩13 小时前
基于Chrome140的FB账号自动化——脚本撰写(二)
自动化·facebook·浏览器自动化·浏览器rpa
2501_9160088913 小时前
iOS 不上架怎么安装?多种应用分发方式解析,ipa 文件安装、企业签名、Ad Hoc 与 TestFlight 实战经验
android·macos·ios·小程序·uni-app·cocoa·iphone