【发布时间】:2018-02-28 09:53:42
【问题描述】:
在将 selenium 升级到 3.9.1 之前,自动化套装运行良好。更新 selenium 后,我在初始化 Android 驱动程序时收到以下错误。
[HTTP] --> POST /wd/hub/session {"desiredCapabilities":{"app":"/Users/abhinav.tiwari/Documents/Office Stuff/Automation/ui-automation-testing/TestData/mobile/testAutomation.apk","deviceName":"emulator-5554","fullReset":"false","noReset":"true","platformName":"Android","platformVersion":"6.0"},"capabilities":{"desiredCapabilities":{"app":"/Users/abhinav.tiwari/Documents/Office Stuff/Automation/ui-automation-testing/TestData/mobile/testAutomation.apk","deviceName":"emulator-5554","fullReset":"false","noReset":"true","platformName":"Android","platformVersion":"6.0"},"firstMatch":[{"platformName":"android"}]}}
[debug] [MJSONWP] Bad parameters: BadParametersError: Parameters were incorrect. We wanted {"required":["desiredCapabilities"],"optional":["requiredCapabilities","sessionId","id"]} and you sent ["desiredCapabilities","capabilities"]
[HTTP] <-- POST /wd/hub/session 400 5 ms - 178
exception is .......org.openqa.selenium.WebDriverException: Unable to parse remote response: Parameters were incorrect. We wanted {"required":["desiredCapabilities"],"optional":["requiredCapabilities","sessionId","id"]} and you sent ["desiredCapabilities","capabilities"]
Build info: version: '3.9.1', revision: '63f7b50', time: '2018-02-07T22:25:02.294Z'
我正在使用 5.0.4 版本的 java 客户端和 1.7.2 版本的 appium。 我在互联网上做了很多研究,但没有找到任何解决方案。
下面是我的代码:
final File apkPath= new File(System.getProperty("user.dir")+File.separator+"TestData"+File.separator+"mobile"+File.separator+"testAutomation.apk");
//Adding DesiredCapabilities
DesiredCapabilities androidCapability = new DesiredCapabilities();
androidCapability.setCapability("platform", testConfig.getRunTimeProperty("platform"));
androidCapability.setCapability("platformVersion", testConfig.getRunTimeProperty("platformVersion"));
androidCapability.setCapability("deviceName", testConfig.getRunTimeProperty("deviceName"));
androidCapability.setCapability("app",apkPath.getAbsolutePath());
androidCapability.setCapability("appPackage", testConfig.getRunTimeProperty("appPackageName"));
androidCapability.setCapability("appActivity",testConfig.getRunTimeProperty("appActivity"));
try
{
AppiumDriver<WebElement> driver = new AndroidDriver<>(new URL("http://"+testConfig.getRunTimeProperty("serverIP")+":"+testConfig.getRunTimeProperty("serverPort")+"/wd/hub"),androidCapability);
}
catch(Exception e)
【问题讨论】:
-
请您的代码试用。
标签: java selenium selenium-webdriver appium