This site is in read only mode. Please continue to browse, but replying, likes, and other actions are disabled for now.
1 / 6
Apr 2018

Background:
O/S Mac Air ver 10.13.4
Appium Version 1.5.3 (Ara)
Java 1.8

Hi guys I hope you can help me with my problem. I just tried to run my Desired Capabilities for the 1st time and I got the following error message from Eclipse. See the attached video here1

Java code from eclipse


package basics;

import java.io.File;

import java.net.MalformedURLException;

import java.net.URL;

import org.openqa.selenium.remote.DesiredCapabilities;

import io.appium.java_client.android.AndroidDriver;

import io.appium.java_client.android.AndroidElement;

import io.appium.java_client.remote.MobileCapabilityType;

public class Invoke {

public static void main(String[] args) throws MalformedURLException {

// TODO Auto-generated method stub

File f = new File("/Users/jacquelinegeorge/Documents/Appium/Apps");

File fs=new File (f,“ApiDemos-debug.apk”);

DesiredCapabilities cap =new DesiredCapabilities();

cap.setCapability(MobileCapabilityType.DEVICE_NAME, “JacquelineNexus5”);

cap.setCapability(MobileCapabilityType.APP, fs.getAbsolutePath() );

AndroidDriver driver = new AndroidDriver<>(new URL(“http://127.0.0.1:4723/wd/hub”),cap);

}

}

Code from Eclipse Terminal

========================

Exception in thread “main” 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:42:22.379Z’

System info: host: ‘Jacquelines-MacBook-Air.local’, ip: ‘192.168.0.5’, os.name: ‘Mac OS X’, os.arch: ‘x86_64’, os.version: ‘10.13.4’, java.version: ‘1.8.0_71’

Driver info: driver.version: AndroidDriver

at org.openqa.selenium.remote.ProtocolHandshake.createSession(ProtocolHandshake.java:111)

at org.openqa.selenium.remote.ProtocolHandshake.createSession(ProtocolHandshake.java:73)

at org.openqa.selenium.remote.HttpCommandExecutor.execute(HttpCommandExecutor.java:138)

at io.appium.java_client.remote.AppiumCommandExecutor.execute(AppiumCommandExecutor.java:89)

at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:601)

at io.appium.java_client.DefaultGenericMobileDriver.execute(DefaultGenericMobileDriver.java:42)

at io.appium.java_client.AppiumDriver.execute(AppiumDriver.java:1)

at io.appium.java_client.android.AndroidDriver.execute(AndroidDriver.java:1)

at org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:219)

at org.openqa.selenium.remote.RemoteWebDriver.(RemoteWebDriver.java:142)

at io.appium.java_client.DefaultGenericMobileDriver.(DefaultGenericMobileDriver.java:38)

at io.appium.java_client.AppiumDriver.(AppiumDriver.java:83)

at io.appium.java_client.AppiumDriver.(AppiumDriver.java:93)

at io.appium.java_client.android.AndroidDriver.(AndroidDriver.java:72)

at basics.Invoke.main(Invoke.java:25)

Code from Appium

================================

[Appium] Appium REST http interface listener started on 0.0.0.0:4723

[HTTP] --> GET /wd/hub/status {}

[MJSONWP] Calling AppiumDriver.getStatus() with args: []

[MJSONWP] Responding to client with driver.getStatus() result: {“build”:{“version”:“1.5.3”…

[HTTP] <-- GET /wd/hub/status 200 42 ms - 83

[HTTP] --> GET /wd/hub/status {}

[MJSONWP] Calling AppiumDriver.getStatus() with args: []

[MJSONWP] Responding to client with driver.getStatus() result: {“build”:{“version”:“1.5.3”…

[HTTP] <-- GET /wd/hub/status 200 30 ms - 83

[HTTP] --> GET /wd/hub/status {}

[MJSONWP] Calling AppiumDriver.getStatus() with args: []

[MJSONWP] Responding to client with driver.getStatus() result: {“build”:{“version”:“1.5.3”…

[HTTP] <-- GET /wd/hub/status 200 233 ms - 83

[HTTP] --> POST /wd/hub/session {“desiredCapabilities”:{“app”:"/Users/jacquelinegeorge/Documents/Appium/Apps/ApiDemos-debug.apk",“deviceName”:“JacquelineNexus5”,“platformName”:“Android”},“capabilities”:{“desiredCapabilities”:{“app”:"/Users/jacquelinegeorge/Documents/Appium/Apps/ApiDemos-debug.apk",“deviceName”:“JacquelineNexus5”,“platformName”:“Android”},“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 21 ms - 178

[HTTP] --> GET /wd/hub/status {}

[MJSONWP] Calling AppiumDriver.getStatus() with args: []

[MJSONWP] Responding to client with driver.getStatus() result: {“build”:{“version”:“1.5.3”…

[HTTP] <-- GET /wd/hub/status 200 75 ms - 83

[HTTP] --> GET /wd/hub/status {}

[MJSONWP] Calling AppiumDriver.getStatus() with args: []

[MJSONWP] Responding to client with driver.getStatus() result: {“build”:{“version”:“1.5.3”…

[HTTP] <-- GET /wd/hub/status 200 100 ms - 83

[HTTP] --> GET /wd/hub/status {}

[MJSONWP] Calling AppiumDriver.getStatus() with args: []

[MJSONWP] Responding to client with driver.getStatus() result: {“build”:{“version”:“1.5.3”…

[HTTP] <-- GET /wd/hub/status 200 92 ms - 83

[HTTP] --> GET /wd/hub/status {}

[MJSONWP] Calling AppiumDriver.getStatus() with args: []

[MJSONWP] Responding to client with driver.getStatus() result: {“build”:{“version”:“1.5.3”…

[HTTP] <-- GET /wd/hub/status 200 107 ms - 83

[HTTP] --> GET /wd/hub/status {}

[MJSONWP] Calling AppiumDriver.getStatus() with args: []

[MJSONWP] Responding to client with driver.getStatus() result: {“build”:{“version”:“1.5.3”…

[HTTP] <-- GET /wd/hub/status 200 80 ms - 83

[HTTP] --> GET /wd/hub/status {}

[MJSONWP] Calling AppiumDriver.getStatus() with args: []

[MJSONWP] Responding to client with driver.getStatus() result: {“build”:{“version”:“1.5.3”…

[HTTP] <-- GET /wd/hub/status 200 95 ms - 83

[HTTP] --> GET /wd/hub/status {}

[MJSONWP] Calling AppiumDriver.getStatus() with args: []

[MJSONWP] Responding to client with driver.getStatus() result: {“build”:{“version”:“1.5.3”…

[HTTP] <-- GET /wd/hub/status 200 64 ms - 83

[HTTP] --> GET /wd/hub/status {}

[MJSONWP] Calling AppiumDriver.getStatus() with args: []

[MJSONWP] Responding to client with driver.getStatus() result: {“build”:{“version”:“1.5.3”…

[HTTP] <-- GET /wd/hub/status 200 69 ms - 83

[HTTP] --> GET /wd/hub/status {}

[MJSONWP] Calling AppiumDriver.getStatus() with args: []

[MJSONWP] Responding to client with driver.getStatus() result: {“build”:{“version”:“1.5.3”…

[HTTP] <-- GET /wd/hub/status 200 26 ms - 83

[HTTP] --> GET /wd/hub/status {}

[MJSONWP] Calling AppiumDriver.getStatus() with args: []

[MJSONWP] Responding to client with driver.getStatus() result: {“build”:{“version”:“1.5.3”…

[HTTP] <-- GET /wd/hub/status 200 28 ms - 83

  • created

    Apr '18
  • last reply

    Apr '18
  • 5

    replies

  • 408

    views

  • 2

    users

  • 1

    like

  • 5

    links

Thank you so much I will update to the latest version.

I dont use appium desktop, but I guess its exactly the same way as appium server. You define the app and devices to use on capabilities:

capabilities.setCapability(MobileCapabilityType.APP,"...");
capabilities.setCapability(MobileCapabilityType.UDID,"....");

Thank you for the suggestion it worked perfectly.

You are a legend :o)