webdriveragent setup教程

要在Mac上成功安装和配置WebDriverAgent(WDA)以进行iOS自动化测试,请遵循以下详细步骤。整个过程涉及环境准备、依赖安装、项目配置、签名设置和运行验证。

一、环境准备与依赖安装

  1. 系统与工具要求:

◦ macOS:建议10.14及以上版本。

◦ Xcode:最新稳定版本,并确保其版本支持您iOS设备的系统版本。您可以在苹果官方支持页面(https://developer.apple.com/support/xcode/)查看版本对应关系。

◦ Homebrew:Mac包管理器,用于安装其他依赖。

  1. 安装必要依赖:

打开终端(Terminal),执行以下命令:

安装Homebrew(如果尚未安装)

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

使用Homebrew安装依赖

brew install libimobiledevice

brew install carthage

brew install node # 如果后续需要结合Appium使用1,5

二、获取与配置WebDriverAgent项目

  1. 克隆项目:

建议使用Appium维护的版本(更新更稳定)。

git clone https://github.com/appium/WebDriverAgent.git

cd WebDriverAgent

  1. 安装Carthage依赖:

在项目根目录执行引导脚本。

./Scripts/bootstrap.sh

注意:如果脚本执行报错,可能需要安装特定版本的Node.js和npm。

三、Xcode项目配置与签名(关键步骤)

这是解决您之前遇到的"通信失败"问题的核心环节。

  1. 打开项目:

在Finder中双击 WebDriverAgent.xcodeproj 文件,用Xcode打开。

  1. 添加Apple ID账户:

在Xcode顶部菜单栏,点击 Xcode -> Settings... -> Accounts,点击左下角"+"号添加您的Apple ID(个人账号即可)。

  1. 配置签名(针对两个Target):

在Xcode项目导航器左侧,点击项目名称,在中间面板的"TARGETS"下,分别对 WebDriverAgentLib 和 WebDriverAgentRunner 进行如下操作:

◦ 选中 WebDriverAgentLib。

◦ 在右侧选择 "Signing & Capabilities" 标签页。

◦ 勾选 "Automatically manage signing"。

◦ 在 "Team" 下拉框中,选择您刚添加的Apple ID(例如"Personal Team")。

◦ 重复以上步骤,为 WebDriverAgentRunner 进行同样配置。

  1. 修改Bundle Identifier(仅限个人免费账号):

如果您使用的是免费Apple ID,Xcode会自动在原始Bundle ID后添加后缀(如 com.facebook.WebDriverAgentRunnerRhystest)。如果自动添加的后缀仍导致冲突,您可以手动将其修改得更独特,例如加上日期戳。

四、构建、运行与验证

  1. 选择运行目标:

◦ 在Xcode顶部工具栏的Scheme选择器中,确保选中 WebDriverAgentRunner。

◦ 在设备选择器中,选择您已通过USB连接的iOS真机(或模拟器)。

  1. 运行测试:

点击Xcode顶部菜单栏的 Product -> Test(或按快捷键 Cmd+U)。

◦ 首次运行可能会提示输入Mac登录密码以访问钥匙串,请允许。

◦ 如果使用个人免费证书,手机会提示"未受信任的开发者"。请到iPhone的 设置 -> 通用 -> VPN与设备管理(或描述文件与设备管理) 中,信任您的Apple ID证书。

  1. 验证安装:

运行成功后,查看Xcode控制台输出。您会看到类似 ServerURLHere->http://<设备IP>:8100 的日志。

◦ 在Mac的浏览器中访问 http://<设备IP>:8100/status。

◦ 如果页面返回一个包含"value"等字段的JSON数据,则表明WDA服务已成功启动。

五、常见问题与注意事项

• 签名失败:如您之前遇到的问题,多由免费账号限制引起。确保为两个Target都正确设置了签名团队,并在手机上信任了开发者证书。终极解决方案是加入付费的Apple Developer Program。

• 端口无法访问:部分国产iPhone可能无法直接通过IP访问。可以使用 tidevice 工具进行端口转发:tidevice relay 8100 8100。

• 版本兼容性:务必确保Xcode版本支持您iOS设备的系统版本,否则可能无法识别设备。

按照以上步骤操作,您应该能在Mac上成功搭建

WebDriverAgent环境。

如果在遇到错误

  1. Your team has no devices...: 这是主因。即使手机已连接,Xcode的自动签名流程可能没有成功在后台将其注册到您的账号下。

  2. No profiles for 'com.facebook...' were found: 这是上一个问题导致的结果。由于没有设备,Xcode无法生成有效的配置文件。

则需要为整个WebDriverAgent项目中的三个Target都修改Bundle ID,并确保它们完全一致。只改一个地方是无效的。

相关推荐
报错小能手4 小时前
ios开发方向——swift内存基础
开发语言·ios·swift
SY.ZHOU4 小时前
移动端架构体系(二):本地持久化与动态部署
flutter·ios·安卓
Mr_Tony5 小时前
iOS / SwiftUI 输入法(键盘)布局处理总结(AI版)
ios·swiftui
zhensherlock1 天前
Protocol Launcher 系列:1Writer iOS 上的 Markdown 文档管理
javascript·笔记·ios·typescript·node.js·iphone·ipad
ˇasushiro1 天前
终端工具配置
开发语言·ios·swift
CDN3601 天前
iOS/Android 集成游戏盾审核被拒?权限与合规配置修复
android·游戏·ios
sun03221 天前
旧版Ipad无法访问https的原因(不支持TLS1.3)
ios·https·ipad
humors2212 天前
[原创]AI工具:读取手机系统文件工具
windows·ios·安卓·鸿蒙·文件·苹果·读取
humors2212 天前
[原创]AI工具:手机文件查杀病毒工具
windows·ios·手机·安卓·鸿蒙·杀毒·苹果