Skip to content

An unknown server-side error occurred while processing the command. Original error: Could not find a driver for automationName 'Appium' and platformName 'android'. Please check your desired capabilities. #1130

@Solesh

Description

@Solesh

Description

Am trying to run a test and am getting Exception in thread "main" org.openqa.selenium.SessionNotCreatedException: Unable to create a new remote session. Please check the server log for more details

Environment

  • java client build version 7.0.0, JDK (build 1.8.0_201-b09)
  • Appium server version or git revision if you use some shapshot: appium v1.12.1
  • Desktop OS/version used to run Appium if necessary: windows 10
  • Node.js version (unless using Appium.app|exe) or Appium CLI or Appium.app|exe: node: v10.15.3
  • Mobile platform/version under test: Android/v6.0
  • Real device or emulator/simulator: Real device

Details

Please provide more details, if necessary.

Code To Reproduce Issue [ Good To Have ]

public class CommonUtils {

private static Properties prop = new Properties();
public static int EXPLICIT_WAIT_TIME;
public static int IMPLICIT_WAIT_TIME;
public static int DEFAULT_WAIT_TIME;
public static String APPLICATION_NAME;
public static String BASE_PKG;
public static String APP_ACTIVITY;
public static String APP_PASSWORD;
private static String APPIUM_PORT;
public static String AUTOMATION_INSTRUMENTATION;
public static String BROWSER_NAME;
public static String PLATFORM_NAME;
public static String NEW_COMMAND_TIMEOUT;
public static String PLATFORM_VERSION;
public static String DEVICE_READY_TIMEOUT;
public static String DEVICE_NAME;
private static DesiredCapabilities capabilities = new DesiredCapabilities();
private static URL serverUrl;
private static AndroidDriver driver;


public static void loadConfigProp(String propertyFileName) throws IOException
{
    FileInputStream fis = new FileInputStream(System.getProperty("user.dir")+"\\src\\test\\resources\\properties\\"+propertyFileName);
    prop.load(fis);

    EXPLICIT_WAIT_TIME = Integer
            .parseInt(prop.getProperty("explicit.wait"));
    IMPLICIT_WAIT_TIME = Integer
            .parseInt(prop.getProperty("implicit.wait"));
    DEFAULT_WAIT_TIME = Integer.parseInt(prop.getProperty("default.wait"));
    APPLICATION_NAME = prop.getProperty("application.path");
    BASE_PKG = prop.getProperty("base.pkg");
    APP_ACTIVITY = prop.getProperty("application.activity");
    APPIUM_PORT = prop.getProperty("appium.server.port");
    AUTOMATION_INSTRUMENTATION=prop.getProperty("automation.instumentation");
    DEVICE_NAME=prop.getProperty("device.name");
    BROWSER_NAME=prop.getProperty("browser.name");
    PLATFORM_NAME=prop.getProperty("platform.name");
    PLATFORM_VERSION=prop.getProperty("platform.version");
    NEW_COMMAND_TIMEOUT=prop.getProperty("new.command.timeout");
    DEVICE_READY_TIMEOUT=prop.getProperty("device.ready.timeout");

}

public static void setCapabilities() {
    capabilities.setCapability(MobileCapabilityType.BROWSER_NAME,
            CommonUtils.BROWSER_NAME);
    capabilities.setCapability(MobileCapabilityType.PLATFORM_VERSION,
            CommonUtils.PLATFORM_VERSION);
    capabilities.setCapability(MobileCapabilityType.PLATFORM_NAME,
            CommonUtils.PLATFORM_NAME);
    capabilities.setCapability(MobileCapabilityType.DEVICE_NAME,
            CommonUtils.DEVICE_NAME);
    capabilities.setCapability(MobileCapabilityType.AUTOMATION_NAME,
            CommonUtils.AUTOMATION_INSTRUMENTATION);
    capabilities.setCapability(MobileCapabilityType.APP, CommonUtils.APPLICATION_NAME);
    capabilities.setCapability(MobileCapabilityType.NEW_COMMAND_TIMEOUT,
            CommonUtils.NEW_COMMAND_TIMEOUT);
    capabilities.setCapability(AndroidMobileCapabilityType.DEVICE_READY_TIMEOUT,
            CommonUtils.DEVICE_READY_TIMEOUT);
    capabilities.setCapability(AndroidMobileCapabilityType.APP_ACTIVITY,
            CommonUtils.APP_ACTIVITY);
    capabilities.setCapability(AndroidMobileCapabilityType.APP_PACKAGE,
            CommonUtils.BASE_PKG);
}

public static AndroidDriver getDriver() throws MalformedURLException {
    serverUrl = new URL("http://localhost:" + APPIUM_PORT + "/wd/hub");
    driver = new AndroidDriver(serverUrl, capabilities);
    driver.manage().timeouts().implicitlyWait(20, TimeUnit.SECONDS);
    return driver;
}

}

public class SelendroidHomeScreenTest {

public static AndroidDriver driver;

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

    CommonUtils.loadConfigProp("selendroidtestapp.properties");
    CommonUtils.setCapabilities();
    driver = CommonUtils.getDriver();

    SelendroidHomeScreen homeScreen = new SelendroidHomeScreen(driver);
    homeScreen.typeData("Hi Appium");
    homeScreen.validateTextView();
    WebViewInteractionScreen webview = homeScreen.startWebView();
    webview.validateWebViewText();

}

}

Link to Appium logs

[Appium] Welcome to Appium v1.12.1
[Appium] Appium REST http interface listener started on 0.0.0.0:4723
[HTTP] --> POST /wd/hub/session
[HTTP] {"desiredCapabilities":{"app":"C:\Users\Solomon Eshiet\Documents\appzone projects\zoneposmobileUItest\src\test\resources\app\selendroid-test-app-0.17.0.apk","appActivity":".HomeScreenActivity","appPackage":"io.selendroid.testapp","newCommandTimeout":"300","platformVersion":"6.0","automationName":"Appium","browserName":"null","platformName":"Android","deviceName":"Android","deviceReadyTimeout":"300"},"capabilities":{"firstMatch":[{"appium:app":"C:\Users\Solomon Eshiet\Documents\appzone projects\zoneposmobileUItest\src\test\resources\app\selendroid-test-app-0.17.0.apk","appium:appActivity":".HomeScreenActivity","appium:appPackage":"io.selendroid.testapp","appium:automationName":"Appium","browserName":"null","appium:deviceName":"Android","appium:deviceReadyTimeout":"300","appium:newCommandTimeout":"300","platformName":"android","appium:platformVersion":"6.0"}]}}
[W3C] Calling AppiumDriver.createSession() with args: [{"app":"C:\Users\Solomon Eshiet\Documents\appzone projects\zoneposmobileUItest\src\test\resources\app\selendroid-test-app-0.17.0.apk","appActivity":".HomeScreenActivity","appPackage":"io.selendroid.testapp","newCommandTimeout":"300","platformVersion":"6.0","automationName":"Appium","browserName":"null","platformName":"Android","deviceName":"Android","deviceReadyTimeout":"300"},null,{"firstMatch":[{"appium:app":"C:\Users\Solomon Eshiet\Documents\appzone projects\zoneposmobileUItest\src\test\resources\app\selendroid-test-app-0.17.0.apk","appium:appActivity":".HomeScreenActivity","appium:appPackage":"io.selendroid.testapp","appium:automationName":"Appium","browserName":"null","appium:deviceName":"Android","appium:deviceReadyTimeout":"300","appium:newCommandTimeout":"300","platformName":"android","appium:platformVersion":"6.0"}]}]
[BaseDriver] Event 'newSessionRequested' logged at 1555499564491 (12:12:44 GMT+0100 (W. Central Africa Standard Time))
[BaseDriver] Number capability passed in as string. Functionality may be compromised.
[BaseDriver] Event 'newSessionStarted' logged at 1555499564500 (12:12:44 GMT+0100 (W. Central Africa Standard Time))
[W3C] Encountered internal error running command: Error: Could not find a driver for automationName 'Appium' and platformName 'android'. Please check your desired capabilities.
[W3C] at AppiumDriver.getDriverAndVersionForCaps (C:\Users\Solomon Eshiet\AppData\Local\Programs\Appium\resources\app\node_modules\appium\lib\appium.js:205:11)
[W3C] at AppiumDriver.getDriverAndVersionForCaps [as createSession] (C:\Users\Solomon Eshiet\AppData\Local\Programs\Appium\resources\app\node_modules\appium\lib\appium.js:268:66)
[W3C] at AppiumDriver.executeCommand (C:\Users\Solomon Eshiet\AppData\Local\Programs\Appium\resources\app\node_modules\appium\node_modules\appium-base-driver\lib\basedriver\driver.js:301:19)
[W3C] at AppiumDriver.executeCommand (C:\Users\Solomon Eshiet\AppData\Local\Programs\Appium\resources\app\node_modules\appium\lib\appium.js:420:26)
[W3C] at executeCommand (C:\Users\Solomon Eshiet\AppData\Local\Programs\Appium\resources\app\node_modules\appium\node_modules\appium-base-driver\lib\protocol\protocol.js:352:34)
[W3C] at asyncHandler (C:\Users\Solomon Eshiet\AppData\Local\Programs\Appium\resources\app\node_modules\appium\node_modules\appium-base-driver\lib\protocol\protocol.js:489:15)
[W3C] at Layer.handle [as handle_request] (C:\Users\Solomon Eshiet\AppData\Local\Programs\Appium\resources\app\node_modules\appium\node_modules\express\lib\router\layer.js:95:5)
[W3C] at next (C:\Users\Solomon Eshiet\AppData\Local\Programs\Appium\resources\app\node_modules\appium\node_modules\express\lib\router\route.js:137:13)
[W3C] at Route.dispatch (C:\Users\Solomon Eshiet\AppData\Local\Programs\Appium\resources\app\node_modules\appium\node_modules\express\lib\router\route.js:112:3)
[W3C] at Layer.handle [as handle_request] (C:\Users\Solomon Eshiet\AppData\Local\Programs\Appium\resources\app\node_modules\appium\node_modules\express\lib\router\layer.js:95:5)
[W3C] at C:\Users\Solomon Eshiet\AppData\Local\Programs\Appium\resources\app\node_modules\appium\node_modules\express\lib\router\index.js:281:22
[W3C] at Function.process_params (C:\Users\Solomon Eshiet\AppData\Local\Programs\Appium\resources\app\node_modules\appium\node_modules\express\lib\router\index.js:335:12)
[W3C] at next (C:\Users\Solomon Eshiet\AppData\Local\Programs\Appium\resources\app\node_modules\appium\node_modules\express\lib\router\index.js:275:10)
[W3C] at logger (C:\Users\Solomon Eshiet\AppData\Local\Programs\Appium\resources\app\node_modules\appium\node_modules\morgan\index.js:144:5)
[W3C] at Layer.handle [as handle_request] (C:\Users\Solomon Eshiet\AppData\Local\Programs\Appium\resources\app\node_modules\appium\node_modules\express\lib\router\layer.js:95:5)
[W3C] at trim_prefix (C:\Users\Solomon Eshiet\AppData\Local\Programs\Appium\resources\app\node_modules\appium\node_modules\express\lib\router\index.js:317:13)
[W3C] at C:\Users\Solomon Eshiet\AppData\Local\Programs\Appium\resources\app\node_modules\appium\node_modules\express\lib\router\index.js:284:7
[W3C] at Function.process_params (C:\Users\Solomon Eshiet\AppData\Local\Programs\Appium\resources\app\node_modules\appium\node_modules\express\lib\router\index.js:335:12)
[W3C] at next (C:\Users\Solomon Eshiet\AppData\Local\Programs\Appium\resources\app\node_modules\appium\node_modules\express\lib\router\index.js:275:10)
[W3C] at C:\Users\Solomon Eshiet\AppData\Local\Programs\Appium\resources\app\node_modules\appium\node_modules\body-parser\lib\read.js:130:5
[W3C] at invokeCallback (C:\Users\Solomon Eshiet\AppData\Local\Programs\Appium\resources\app\node_modules\appium\node_modules\raw-body\index.js:224:16)
[W3C] at done (C:\Users\Solomon Eshiet\AppData\Local\Programs\Appium\resources\app\node_modules\appium\node_modules\raw-body\index.js:213:7)
[W3C] at IncomingMessage.onEnd (C:\Users\Solomon Eshiet\AppData\Local\Programs\Appium\resources\app\node_modules\appium\node_modules\raw-body\index.js:273:7)
[W3C] at IncomingMessage.emit (events.js:182:13)
[W3C] at endReadableNT (_stream_readable.js:1090:12)
[W3C] at process._tickCallback (internal/process/next_tick.js:63:19)
[HTTP] <-- POST /wd/hub/session 500 21 ms - 938
[HTTP]

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions