我正试图在Mac上使用Appium在Mobile中启动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);
当我尝试在eclipse中运行时,下面是我面临的例外。
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
请帮助我。
答案 0 :(得分:1)
要解决所需功能中的问题,请将所需功能的代码更改为
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");
版本和平台版本之间存在差异。
platform Version是您要在测试中使用的移动操作系统版本。 版本是您要在测试中使用的浏览器版本。
您可以参考DesiredCapabilities [here] [1]。
[1]:a)https://wiki.saucelabs.com/display/DOCS/Desired+Capabilities+Required+for+Selenium+and+Appium+Tests b)https://github.com/SeleniumHQ/selenium/wiki/DesiredCapabilities
答案 1 :(得分:0)
你需要使用appium 1.6.4 for 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并在app 1.6.4中提供ios 10.3支持