将真实 iOS 设备与 Appium 服务器连接时出错

Posted

技术标签:

【中文标题】将真实 iOS 设备与 Appium 服务器连接时出错【英文标题】:Error while connecting real iOS device with Appium server 【发布时间】:2018-03-26 10:16:15 【问题描述】:

我正在尝试从 Appium 服务器打开应用程序并收到下面提到的错误。

处理命令时出现未知的服务器端错误。 原始错误:未知设备或模拟器 UDID: '046e4469d6cb14ff57e378599bd4b1d09390472b'

 
  "platformName": "ios",
  "deviceName": "iPad",
  "automationName": "XCUITest",
  "udid": "046e4469d6cb14ff57e378599bd4b1d09390472b",
  "bundleId": "com.***",
  "platformVersion": "11.2.6",
  "app": "/Users/***/***.ipa"

甚至尝试在我的 Mac 机器上使用应用程序位置,但得到了同样的错误。

xcode version:9.2

ios version:11.2.6

Mac OS version:10.13.3

Appium server version:1.7.2

【问题讨论】:

你还需要添加 - “app”: “” - 你的应用文件在机器上的位置 我也已经尝试过应用位置,但仍然是同样的错误 你用过platformVersion吗? 是的,试过了。用值更新了我的 q 【参考方案1】:

需要的配置 -


 “platformName”: “iOS”,
 “platformVersion”: “10.2.1",
 “deviceName”: “------”,
 “udid”: “fdbe0d55ced1fd6fa842681b6a058438573fb762",
 “app”: “/Users/----/---/---/---.ipa”,
 “automationName”: “XCUITest”

根据应用路径,会找到要加载的应用,同时你必须提供iOS版本(XCode ios模拟器版本为模拟器/设备操作系统版本为设备)。

【讨论】:

我尝试了 iOS 版本和应用程序路径,并用这两个值更新了我的问题,但仍然出现相同的错误。 还有一些其他的配置问题,你可以查看 github 页面来验证,你使用的都是正确的配置。 - github.com/appium/appium-xcuitest-driver/blob/master/docs/… 我已按照上述步骤操作,现在出现以下错误。请帮我解决这个问题。处理命令时发生未知的服务器端错误。原始错误:由于 xcodebuild 失败,无法启动 WebDriverAgent:“xcodebuild failed with code 65”。确保您遵循github.com/appium/appium-xcuitest-driver/blob/master/docs/… 上的教程。如果已安装 WebDriverAgentRunner 应用程序,请尝试从设备中删除它并重新启动设备。 这个错误一般发生在provisioning有问题的时候,你能检查一下你的web driver xcodeproj是否选择了有效的provisioning? 问题已解决。这是由于我机器中的 webdriveragent 项目造成的。感谢大家的投入。【参考方案2】:

这里是 iOS 上限配置,

 DesiredCapabilities capabilities = new DesiredCapabilities();
 capabilities.setCapability("deviceName", "iPhone");
 capabilities.setCapability("platformName", "iOS");
 capabilities.setCapability("automationName", "XCUITest");
 capabilities.setCapability("udid", “******************************”);
 capabilities.setCapability("bundleId”,”********”);
 capabilities.setCapability("noReset", true);
 capabilities.setCapability("app", “*******app path******“);
 driver = new IOSDriver(new URL("http://0.0.0.0:4723/wd/hub"),capabilities);

请确保您提到的 UDID 正确, 并且您确实需要在您的 iOS 设备中添加“WebDriver Agent”应用程序。

【讨论】:

你能帮我处理 webdriveragent 部分吗? 部署 webDriverAgent 的命令如下: 1. brew install carthage 2. npm install -g ios-deploy 3. gem install xcpretty

以上是关于将真实 iOS 设备与 Appium 服务器连接时出错的主要内容,如果未能解决你的问题,请参考以下文章

无法使用 appium 1.6.0 在 IOS 10 真实设备中启动 ipa 文件

如何使用 Appium 在真实设备上自动化 3rd 方 ios 应用程序

我需要付费 ios 开发者帐户来使用 appium 自动化真实设备和模拟器吗

无法在真实设备上使用 Appium 在 iOS hyprid 应用程序自动化中识别 WEBVIEW 中的元素

将 api 与真实设备颤振连接起来

真实手机连接控制