转发新会话时出错,找不到:功能 [{iPhone=Safari,浏览器名称=Safari,设备版本=10.3.1,平台名



我正在尝试在Mac上使用Appium在移动设备中启动Safari浏览器。

以下是我在 eclipse 中使用的功能

desCapabilities = DesiredCapabilities.iphone();
desCapabilities.setCapability(BrowserType.IPHONE, "Safari");
desCapabilities.setCapability("browserName", "Safari");
desCapabilities.setCapability("platformName","iOS");
desCapabilities.setCapability("deviceName", "iPhone");
desCapabilities.setCapability("version", "10.3.1");
desCapabilities.setCapability("udid", "mobileID");
driver = new RemoteWebDriver(new URL("http://" + nodeUrl + ":" + nodeUrlPort + "/wd/hub"), desCapabilities);

当我尝试在日食中运行时,以下是我面临的异常。

org.openqa.selenium.WebDriverException: Error forwarding the new session cannot find : Capabilities [{iPhone=Safari, browserName=Safari, platformName=iOS, udid=****, deviceName=Ananda's iPhone, version=10.3.1, platform=MAC}]
Command duration or timeout: 233 milliseconds
Build info: version: '2.53.1', revision: '*****', time: '2016-06-30 19:26:09'
System info: host: 'hostname', ip: 'ipaddress', os.name: 'Mac OS X', os.arch: 'x86_64', os.version: '10.12.4', java.version: '1.7.0_71'
Driver info: org.openqa.selenium.remote.RemoteWebDriver 

请帮帮我解决这个问题。

若要修复所需功能中的问题,请将所需功能的代码更改为

desCapabilities.setCapability("browserName", "Safari");
desCapabilities.setCapability("platformName","iOS");
desCapabilities.setCapability("deviceName", "write the name of the test device (eg: myphone)");
desCapabilities.setCapability(“platformVersion”, "10.3.1");
desCapabilities.setCapability("udid", "write the mobile udid");
版本

和平台版本之间存在差异。

平台版本是要在测试中使用的移动操作系统版本。版本是要在测试中使用的浏览器版本。

你可以参考DesiredCapabilities[这里][1]。

[1]: a( https://wiki.saucelabs.com/display/DOCS/Desired+Capabilities+Required+for+Selenium+and+Appium+Testsb( https://github.com/SeleniumHQ/selenium/wiki/DesiredCapabilities

您需要将 appium 1.6.4 用于 ios 10.3.1。升级您的环境,它将解决问题。请参阅以下链接:

github.com/appium/appium/releases/tag/v1.6.4

Appium 1.6.4 修复了以前版本的许多问题。此版本支持 iOS 10.3 以及 Android 7.1。

对于ios 10及更高版本,您必须使用appium 1.6.x和ios 10.3支持已在appium 1.6.4中提供

最新更新