testdotai / appium-classifier-plugin

Apache License 2.0
259 stars 77 forks source link

Exception in thread "main" org.openqa.selenium.WebDriverException: Returned value cannot be converted to WebElement: {element-6066-11e4-a52e-4f735466cecf=07fd6306-4740-419e-8d1b-0f38d745ba01, rect={x=1075, y=651, width=2, height=550}} #14

Open NewUserMob opened 5 years ago

NewUserMob commented 5 years ago

Problem Exception in thread "main" org.openqa.selenium.WebDriverException: Returned value cannot be converted to WebElement: {element-6066-11e4-a52e-4f735466cecf=07fd6306-4740-419e-8d1b-0f38d745ba01, rect={x=1075, y=651, width=2, height=550}} Build info: version: '3.12.0', revision: '7c6e0b3', time: '2018-05-08T15:15:08.936Z' System info: host: 'QPaaSs-Mac-mini.local', ip: '192.168.43.193', os.name: 'Mac OS X', os.arch: 'x86_64', os.version: '10.13.6', java.version: '11.0.1' Driver info: driver.version: AndroidDriver at org.openqa.selenium.remote.RemoteWebDriver.findElement(RemoteWebDriver.java:324) at io.appium.java_client.DefaultGenericMobileDriver.findElement(DefaultGenericMobileDriver.java:62) at io.appium.java_client.AppiumDriver.findElement(AppiumDriver.java:1) at io.appium.java_client.android.AndroidDriver.findElement(AndroidDriver.java:1) at scr.main(scr.java:44) Caused by: java.lang.ClassCastException: class java.util.LinkedHashMap cannot be cast to class org.openqa.selenium.WebElement (java.util.LinkedHashMap is in module java.base of loader 'bootstrap'; org.openqa.selenium.WebElement is in unnamed module of loader 'app') at org.openqa.selenium.remote.RemoteWebDriver.findElement(RemoteWebDriver.java:322) ... 4 more

Environment Appium :1.9.2 beta.2 Java client :5.0.4 Selenium server standalone :3.12.0

Details: We are able to find the elements but we are unable to interact with element like click and sendkeys etc., and also While using java-client 6.0 and above it had issues while hitting the server. We are trying Test.AI which requires us to use the latest version.

Appium Logs: [Appium] Welcome to Appium v1.9.2-beta.2 [Appium] Appium REST http interface listener started on 0.0.0.0:4723 [HTTP] --> POST /wd/hub/session [HTTP] {"desiredCapabilities":{"appActivity":"com.flipkart.android.SplashActivity","appPackage":"com.flipkart.android","automationName":"uiautomator2","customFindModules":{"ai":"test-ai-classifier"},"deviceName":"Nexus 5X","noReset":true,"platformName":"Android","platformVersion":"8.0","shouldUseCompactResponses":false},"capabilities":{"desiredCapabilities":{"appActivity":"com.flipkart.android.SplashActivity","appPackage":"com.flipkart.android","automationName":"uiautomator2","customFindModules":{"ai":"test-ai-classifier"},"deviceName":"Nexus 5X","noReset":true,"platformName":"Android","platformVersion":"8.0","shouldUseCompactResponses":false},"firstMatch":[{"platformName":"android"}]}} [debug] [W3C] Calling AppiumDriver.createSession() with args: [{"appActivity":"com.flipkart.android.SplashActivity","appPackage":"com.flipkart.android","automationName":"uiautomator2","customFindModules":{"ai":"test-ai-classifier"},"deviceName":"Nexus 5X","noReset":true,"platformName":"Android","platformVersion":"8.0","shouldUseCompactResponses":false},null,{"desiredCapabilities":{"appActivity":"com.flipkart.android.SplashActivity","appPackage":"com.flipkart.android","automationName":"uiautomator2","customFindModules":{"ai":"test-ai-classifier"},"deviceName":"Nexus 5X","noReset":true,"platformName":"Android","platformVersion":"8.0","shouldUseCompactResponses":false},"firstMatch":[{"platformName":"android"}]}] [debug] [BaseDriver] Event 'newSessionRequested' logged at 1549524662717 (13:01:02 GMT+0530 (India Standard Time)) [Appium] Could not parse W3C capabilities: 'deviceName' can't be blank [Appium] Trying to fix W3C capabilities by merging them with JSONWP caps [BaseDriver] The capabilities ["appActivity","appPackage","automationName","customFindModules","deviceName","noReset","platformVersion","shouldUseCompactResponses"] are not standard capabilities and should have an extension prefix [Appium] Creating new AndroidUiautomator2Driver (v1.22.0) session [Appium] Capabilities: [Appium] appActivity: com.flipkart.android.SplashActivity [Appium] appPackage: com.flipkart.android [Appium] automationName: uiautomator2 [Appium] customFindModules: { [Appium] ai: test-ai-classifier [Appium] } [Appium] deviceName: Nexus 5X [Appium] noReset: true [Appium] platformVersion: 8.0 [Appium] shouldUseCompactResponses: false [Appium] platformName: android [debug] [BaseDriver] W3C capabilities {"alwaysMatch":{"appium:app... and MJSONWP desired capabilities {"appActivity":"com.flipkar... were provided [debug] [BaseDriver] Creating session with W3C capabilities: {"alwaysMatch":{"appium:app... [BaseDriver] The following capabilities were provided, but are not recognized by appium: customFindModules, shouldUseCompactResponses. [BaseDriver] Session created with session id: 223b1a7b-5963-4512-99fd-8029f858f3db (node:2026) [DEP0005] DeprecationWarning: Buffer() is deprecated due to security and usability issues. Please use the Buffer.alloc(), Buffer.allocUnsafe(), or Buffer.from() methods instead. [AndroidDriver] Java version is: 11.0.1 [ADB] Checking whether adb is present [ADB] Found 1 'build-tools' folders under '/Users/qpaas/Library/Android/sdk' (newest first): [ADB] /Users/qpaas/Library/Android/sdk/build-tools/28.0.3 [ADB] Using adb from /Users/qpaas/Library/Android/sdk/platform-tools/adb [AndroidDriver] Retrieving device list [debug] [ADB] Trying to find a connected android device [debug] [ADB] Getting connected devices... [debug] [ADB] 1 device(s) connected [AndroidDriver] Looking for a device with Android '8.0' [debug] [ADB] Setting device id to 00d1d0c9b25515e5 [ADB] Getting device platform version [debug] [ADB] Running '/Users/qpaas/Library/Android/sdk/platform-tools/adb -P 5037 -s 00d1d0c9b25515e5 shell getprop ro.build.version.release' [debug] [ADB] Current device property 'ro.build.version.release': 8.0.0 [AndroidDriver] Using device: 00d1d0c9b25515e5 [debug] [ADB] Setting device id to 00d1d0c9b25515e5 [debug] [ADB] Running '/Users/qpaas/Library/Android/sdk/platform-tools/adb -P 5037 -s 00d1d0c9b25515e5 shell getprop ro.build.version.sdk' [debug] [ADB] Current device property 'ro.build.version.sdk': 26 [debug] [ADB] Device API level: 26 [AndroidDriver] No app sent in, not parsing package/activity [debug] [ADB] Getting all processes with uiautomator [debug] [ADB] Running '/Users/qpaas/Library/Android/sdk/platform-tools/adb -P 5037 -s 00d1d0c9b25515e5 shell ps' [debug] [ADB] Running '/Users/qpaas/Library/Android/sdk/platform-tools/adb -P 5037 -s 00d1d0c9b25515e5 shell am force-stop io.appium.uiautomator2.server' [debug] [ADB] Checking app cert for /Users/qpaas/Downloads/appium-1.9.2-beta.2/node_modules/appium-uiautomator2-server/apks/appium-uiautomator2-server-v2.3.0.apk [ADB] Using apksigner from /Users/qpaas/Library/Android/sdk/build-tools/28.0.3/apksigner [debug] [ADB] Starting '/Users/qpaas/Library/Android/sdk/build-tools/28.0.3/apksigner' with args '["verify","--print-certs","/Users/qpaas/Downloads/appium-1.9.2-beta.2/node_modules/appium-uiautomator2-server/apks/appium-uiautomator2-server-v2.3.0.apk"]' [debug] [ADB] apksigner stdout: Signer #1 certificate DN: EMAILADDRESS=android@android.com, CN=Android, OU=Android, O=Android, L=Mountain View, ST=California, C=US [debug] [ADB] Signer #1 certificate SHA-256 digest: a40da80a59d170caa950cf15c18c454d47a39b26989d8b640ecd745ba71bf5dc [debug] [ADB] Signer #1 certificate SHA-1 digest: 61ed377e85d386a8dfee6b864bd85b0bfaa5af81 [debug] [ADB] Signer #1 certificate MD5 digest: e89b158e4bcf988ebd09eb83f5378e87 [debug] [ADB] [debug] [ADB] '/Users/qpaas/Downloads/appium-1.9.2-beta.2/node_modules/appium-uiautomator2-server/apks/appium-uiautomator2-server-v2.3.0.apk' is already signed. [debug] [ADB] Checking app cert for /Users/qpaas/Downloads/appium-1.9.2-beta.2/node_modules/appium-uiautomator2-server/apks/appium-uiautomator2-server-debug-androidTest.apk [debug] [ADB] Starting '/Users/qpaas/Library/Android/sdk/build-tools/28.0.3/apksigner' with args '["verify","--print-certs","/Users/qpaas/Downloads/appium-1.9.2-beta.2/node_modules/appium-uiautomator2-server/apks/appium-uiautomator2-server-debug-androidTest.apk"]' [debug] [ADB] apksigner stdout: Signer #1 certificate DN: EMAILADDRESS=android@android.com, CN=Android, OU=Android, O=Android, L=Mountain View, ST=California, C=US [debug] [ADB] Signer #1 certificate SHA-256 digest: a40da80a59d170caa950cf15c18c454d47a39b26989d8b640ecd745ba71bf5dc [debug] [ADB] Signer #1 certificate SHA-1 digest: 61ed377e85d386a8dfee6b864bd85b0bfaa5af81 [debug] [ADB] Signer #1 certificate MD5 digest: e89b158e4bcf988ebd09eb83f5378e87 [debug] [ADB] [debug] [ADB] '/Users/qpaas/Downloads/appium-1.9.2-beta.2/node_modules/appium-uiautomator2-server/apks/appium-uiautomator2-server-debug-androidTest.apk' is already signed. [debug] [ADB] Getting install status for io.appium.uiautomator2.server [debug] [ADB] Running '/Users/qpaas/Library/Android/sdk/platform-tools/adb -P 5037 -s 00d1d0c9b25515e5 shell dumpsys package io.appium.uiautomator2.server' [debug] [ADB] 'io.appium.uiautomator2.server' is installed [debug] [ADB] Getting package info for 'io.appium.uiautomator2.server' [debug] [ADB] Running '/Users/qpaas/Library/Android/sdk/platform-tools/adb -P 5037 -s 00d1d0c9b25515e5 shell dumpsys package io.appium.uiautomator2.server' [ADB] Checking whether aapt is present [ADB] Using aapt from /Users/qpaas/Library/Android/sdk/build-tools/28.0.3/aapt [debug] [ADB] The installed 'io.appium.uiautomator2.server' package does not require upgrade ('2.3.0' >= '2.3.0') [debug] [ADB] Getting install status for io.appium.uiautomator2.server.test [debug] [ADB] Running '/Users/qpaas/Library/Android/sdk/platform-tools/adb -P 5037 -s 00d1d0c9b25515e5 shell dumpsys package io.appium.uiautomator2.server.test' [debug] [ADB] 'io.appium.uiautomator2.server.test' is installed [debug] [ADB] Getting package info for 'io.appium.uiautomator2.server.test' [debug] [ADB] Running '/Users/qpaas/Library/Android/sdk/platform-tools/adb -P 5037 -s 00d1d0c9b25515e5 shell dumpsys package io.appium.uiautomator2.server.test' [ADB] Cannot read version codes of '/Users/qpaas/Downloads/appium-1.9.2-beta.2/node_modules/appium-uiautomator2-server/apks/appium-uiautomator2-server-debug-androidTest.apk' and/or 'io.appium.uiautomator2.server.test' [ADB] Cannot read version names of '/Users/qpaas/Downloads/appium-1.9.2-beta.2/node_modules/appium-uiautomator2-server/apks/appium-uiautomator2-server-debug-androidTest.apk' and/or 'io.appium.uiautomator2.server.test'. Assuming correct app version is already installed [debug] [UiAutomator2] Waiting up to 20000ms for instrumentation 'io.appium.uiautomator2.server.test/android.support.test.runner.AndroidJUnitRunner' to be available [debug] [ADB] Running '/Users/qpaas/Library/Android/sdk/platform-tools/adb -P 5037 -s 00d1d0c9b25515e5 shell pm list instrumentation' [debug] [UiAutomator2] Instrumentation 'io.appium.uiautomator2.server.test/android.support.test.runner.AndroidJUnitRunner' available [debug] [ADB] Running '/Users/qpaas/Library/Android/sdk/platform-tools/adb -P 5037 -s 00d1d0c9b25515e5 wait-for-device' [debug] [ADB] Running '/Users/qpaas/Library/Android/sdk/platform-tools/adb -P 5037 -s 00d1d0c9b25515e5 shell echo ping' [debug] [AndroidDriver] Pushing settings apk to device... [debug] [ADB] Getting install status for io.appium.settings [debug] [ADB] Running '/Users/qpaas/Library/Android/sdk/platform-tools/adb -P 5037 -s 00d1d0c9b25515e5 shell dumpsys package io.appium.settings' [debug] [ADB] 'io.appium.settings' is installed [debug] [ADB] Getting package info for 'io.appium.settings' [debug] [ADB] Running '/Users/qpaas/Library/Android/sdk/platform-tools/adb -P 5037 -s 00d1d0c9b25515e5 shell dumpsys package io.appium.settings' [debug] [ADB] The installed 'io.appium.settings' package does not require upgrade (17 > 10) [debug] [ADB] Running '/Users/qpaas/Library/Android/sdk/platform-tools/adb -P 5037 -s 00d1d0c9b25515e5 shell ps' [debug] [AndroidDriver] io.appium.settings is already running. There is no need to reset its permissions. [debug] [ADB] Device API level: 26 [debug] [ADB] Running '/Users/qpaas/Library/Android/sdk/platform-tools/adb -P 5037 -s 00d1d0c9b25515e5 shell appops set io.appium.settings android\:mock_location allow' [AndroidDriver] setDeviceLanguageCountry requires language or country. [AndroidDriver] Got language: 'null' and country: 'null' [debug] [Logcat] Starting logcat capture [debug] [UiAutomator2] Forwarding UiAutomator2 Server port 6790 to 8202 [debug] [ADB] Forwarding system: 8202 to device: 6790 [debug] [ADB] Running '/Users/qpaas/Library/Android/sdk/platform-tools/adb -P 5037 -s 00d1d0c9b25515e5 forward tcp\:8202 tcp\:6790' [debug] [UiAutomator2] No app capability. Assuming it is already on the device [debug] [ADB] Checking app cert for null [debug] [ADB] 'null' does not exist [debug] [ADB] Getting all processes with uiautomator [debug] [ADB] Running '/Users/qpaas/Library/Android/sdk/platform-tools/adb -P 5037 -s 00d1d0c9b25515e5 shell ps' [debug] [ADB] Running '/Users/qpaas/Library/Android/sdk/platform-tools/adb -P 5037 -s 00d1d0c9b25515e5 shell am force-stop io.appium.uiautomator2.server' [UiAutomator2] Starting uiautomator2 server 2.3.0 [UiAutomator2] Using UIAutomator2 server from '/Users/qpaas/Downloads/appium-1.9.2-beta.2/node_modules/appium-uiautomator2-server/apks/appium-uiautomator2-server-v2.3.0.apk' and test from '/Users/qpaas/Downloads/appium-1.9.2-beta.2/node_modules/appium-uiautomator2-server/apks/appium-uiautomator2-server-debug-androidTest.apk' [UiAutomator2] Running command: 'adb -s 00d1d0c9b25515e5 shell am instrument -w io.appium.uiautomator2.server.test/android.support.test.runner.AndroidJUnitRunner' [UiAutomator2] Waiting up to 20000ms for UiAutomator2 to be online... [debug] [JSONWP Proxy] Matched '/status' to command name 'getStatus' [debug] [JSONWP Proxy] Proxying [GET /status] to [GET http://localhost:8202/wd/hub/status] with no body [JSONWP Proxy] Got an unexpected response: {"errno":"ECONNRESET","code":"ECONNRESET","syscall":"read"} [debug] [JSONWP Proxy] Matched '/status' to command name 'getStatus' [debug] [JSONWP Proxy] Proxying [GET /status] to [GET http://localhost:8202/wd/hub/status] with no body [JSONWP Proxy] Got an unexpected response: {"errno":"ECONNRESET","code":"ECONNRESET","syscall":"read"} [debug] [JSONWP Proxy] Matched '/status' to command name 'getStatus' [debug] [JSONWP Proxy] Proxying [GET /status] to [GET http://localhost:8202/wd/hub/status] with no body [JSONWP Proxy] Got an unexpected response: {"errno":"ECONNRESET","code":"ECONNRESET","syscall":"read"} [debug] [JSONWP Proxy] Matched '/status' to command name 'getStatus' [debug] [JSONWP Proxy] Proxying [GET /status] to [GET http://localhost:8202/wd/hub/status] with no body [JSONWP Proxy] Got an unexpected response: {"errno":"ECONNRESET","code":"ECONNRESET","syscall":"read"} [debug] [JSONWP Proxy] Matched '/status' to command name 'getStatus' [debug] [JSONWP Proxy] Proxying [GET /status] to [GET http://localhost:8202/wd/hub/status] with no body [debug] [JSONWP Proxy] Got response with status 200: "{\"sessionId\":\"SESSIONID\",\"status\":0,\"value\":\"Status Invoked\"}" [debug] [JSONWP Proxy] Matched '/session' to command name 'createSession' [debug] [JSONWP Proxy] Proxying [POST /session] to [POST http://localhost:8202/wd/hub/session] with body: {"desiredCapabilities":{"platform":"LINUX","webStorageEnabled":false,"takesScreenshot":true,"javascriptEnabled":true,"databaseEnabled":false,"networkConnectionEnabled":true,"locationContextEnabled":false,"warnings":{},"desired":{"platformName":"android","appActivity":"com.flipkart.android.SplashActivity","appPackage":"com.flipkart.android","automationName":"uiautomator2","customFindModules":{"ai":"test-ai-classifier"},"deviceName":"Nexus 5X","noReset":true,"platformVersion":"8.0","shouldUseCompactResponses":false},"platformName":"android","appActivity":"com.flipkart.android.SplashActivity","appPackage":"com.flipkart.android","automationName":"uiautomator2","customFindModules":{"ai":"test-ai-classifier"},"deviceName":"00d1d0c9b25515e5","noReset":true,"platformVersion":"8.0","shouldUseCompactResponses":false,"deviceUDID":"00d1d0c9b25515e5"}} [debug] [JSONWP Proxy] Got response with status 200: {"sessionId":"f9e4060b-3d40-477d-9bc9-f00b87a48000","status":0,"value":"Created Session"} [debug] [JSONWP Proxy] Proxying [GET /appium/device/info] to [GET http://localhost:8202/wd/hub/session/f9e4060b-3d40-477d-9bc9-f00b87a48000/appium/device/info] with no body [debug] [JSONWP Proxy] Got response with status 200: "{\"sessionId\":\"f9e4060b-3d40-477d-9bc9-f00b87a48000\",\"status\":0,\"value\":{\"androidId\":\"1c526fb2f4e5b889\",\"manufacturer\":\"LGE\",\"model\":\"Nexus 5X\",\"brand\":\"google\",\"apiVersion\":\"26\",\"platformVersion\":\"8.0.0\",\"carrierName\":\"\",\"realDisplaySize\":\"1080x1920\",\"displayDensity\":500}}" [debug] [ADB] Running '/Users/qpaas/Library/Android/sdk/platform-tools/adb -P 5037 -s 00d1d0c9b25515e5 shell dumpsys window' [AndroidDriver] Screen already unlocked, doing nothing [UiAutomator2] UiAutomator2 did not start the activity we were waiting for, 'com.flipkart.android/com.flipkart.android.SplashActivity'. Starting it ourselves [debug] [ADB] Device API level: 26 [debug] [ADB] Running '/Users/qpaas/Library/Android/sdk/platform-tools/adb -P 5037 -s 00d1d0c9b25515e5 shell am start -W -n com.flipkart.android/com.flipkart.android.SplashActivity -S -a android.intent.action.MAIN -c android.intent.category.LAUNCHER -f 0x10200000' [debug] [JSONWP Proxy] Proxying [GET /appium/device/pixel_ratio] to [GET http://localhost:8202/wd/hub/session/f9e4060b-3d40-477d-9bc9-f00b87a48000/appium/device/pixel_ratio] with body: {} [debug] [JSONWP Proxy] Got response with status 200: "{\"sessionId\":\"f9e4060b-3d40-477d-9bc9-f00b87a48000\",\"status\":0,\"value\":3.125}" [debug] [JSONWP Proxy] Matched '/appium/device/system_bars' to command name 'getSystemBars' [debug] [JSONWP Proxy] Proxying [GET /appium/device/system_bars] to [GET http://localhost:8202/wd/hub/session/f9e4060b-3d40-477d-9bc9-f00b87a48000/appium/device/system_bars] with body: {} [debug] [JSONWP Proxy] Got response with status 200: "{\"sessionId\":\"f9e4060b-3d40-477d-9bc9-f00b87a48000\",\"status\":0,\"value\":{\"statusBar\":75}}" [debug] [JSONWP Proxy] Matched '/window/current/size' to command name 'getWindowSize' [debug] [JSONWP Proxy] Proxying [GET /window/current/size] to [GET http://localhost:8202/wd/hub/session/f9e4060b-3d40-477d-9bc9-f00b87a48000/window/current/size] with body: {} [debug] [JSONWP Proxy] Got response with status 200: "{\"sessionId\":\"f9e4060b-3d40-477d-9bc9-f00b87a48000\",\"status\":0,\"value\":{\"height\":1770,\"width\":1080}}" [Appium] New AndroidUiautomator2Driver session created successfully, session 223b1a7b-5963-4512-99fd-8029f858f3db added to master session list [debug] [BaseDriver] Event 'newSessionStarted' logged at 1549524673896 (13:01:13 GMT+0530 (India Standard Time)) [debug] [W3C (223b1a7b)] Cached the protocol value 'W3C' for the new session 223b1a7b-5963-4512-99fd-8029f858f3db [debug] [W3C (223b1a7b)] Responding to client with driver.createSession() result: {"capabilities":{"platform":"LINUX","webStorageEnabled":false,"takesScreenshot":true,"javascriptEnabled":true,"databaseEnabled":false,"networkConnectionEnabled":true,"locationContextEnabled":false,"warnings":{},"desired":{"platformName":"android","appActivity":"com.flipkart.android.SplashActivity","appPackage":"com.flipkart.android","automationName":"uiautomator2","customFindModules":{"ai":"test-ai-classifier"},"deviceName":"Nexus 5X","noReset":true,"platformVersion":"8.0","shouldUseCompactResponses":false},"platformName":"android","appActivity":"com.flipkart.android.SplashActivity","appPackage":"com.flipkart.android","automationName":"uiautomator2","customFindModules":{"ai":"test-ai-classifier"},"deviceName":"00d1d0c9b25515e5","noReset":true,"platformVersion":"8.0.0","shouldUseCompactResponses":false,"deviceUDID":"00d1d0c9b25515e5","deviceApiLevel":26,"deviceScreenSize":"1080x1920","deviceScreenDensity":500,"deviceModel":"Nexus 5X","deviceManufacturer":"LGE","pixelRatio":3.125,"statBarHeight":75,"viewport... [HTTP] <-- POST /wd/hub/session 200 11191 ms - 1136 [HTTP] [HTTP] --> POST /wd/hub/session/223b1a7b-5963-4512-99fd-8029f858f3db/element [HTTP] {"value":"ai:search","using":"-custom"} [debug] [W3C (223b1a7b)] Calling AppiumDriver.findElement() with args: ["-custom","ai:search","223b1a7b-5963-4512-99fd-8029f858f3db"] [debug] [BaseDriver] Find plugin 'ai' requested; will attempt to use it from 'test-ai-classifier' [debug] [BaseDriver] Waiting up to 0 ms for condition [ai] Retrieving current settings to check element response attributes [debug] [JSONWP Proxy] Matched '/appium/settings' to command name 'getSettings' [debug] [JSONWP Proxy] Proxying [GET /appium/settings] to [GET http://localhost:8202/wd/hub/session/f9e4060b-3d40-477d-9bc9-f00b87a48000/appium/settings] with no body [debug] [JSONWP Proxy] Got response with status 200: "{\"sessionId\":\"f9e4060b-3d40-477d-9bc9-f00b87a48000\",\"status\":0,\"value\":{\"actionAcknowledgmentTimeout\":3000,\"allowInvisibleElements\":false,\"ignoreUnimportantViews\":false,\"elementResponseAttributes\":\"\",\"enableNotificationListener\":true,\"keyInjectionDelay\":0,\"scrollAcknowledgmentTimeout\":200,\"shouldUseCompactResponses\":false,\"waitForIdleTimeout\":10000,\"waitForSelectorTimeout\":10000,\"shutdownOnPowerDisconnect\":true}}" [ai] We will need to update settings to include element response attributes [UiAutomator2] Forwarding the following settings to the UiAutomator2 server: ["elementResponseAttributes"] [debug] [JSONWP Proxy] Matched '/appium/settings' to command name 'updateSettings' [debug] [JSONWP Proxy] Proxying [POST /appium/settings] to [POST http://localhost:8202/wd/hub/session/f9e4060b-3d40-477d-9bc9-f00b87a48000/appium/settings] with body: {"settings":{"elementResponseAttributes":"rect"}} [debug] [JSONWP Proxy] Got response with status 200: {"sessionId":"f9e4060b-3d40-477d-9bc9-f00b87a48000","status":0,"value":true} [ai] Setting confidence threshold to default value of 0.2 [ai] Retrieving data for all leaf-node elements on screen [debug] [BaseDriver] Valid locator strategies for this request: xpath, id, class name, accessibility id, -android uiautomator [debug] [BaseDriver] Waiting up to 0 ms for condition [debug] [JSONWP Proxy] Matched '/elements' to command name 'findElements' [debug] [JSONWP Proxy] Proxying [POST /elements] to [POST http://localhost:8202/wd/hub/session/f9e4060b-3d40-477d-9bc9-f00b87a48000/elements] with body: {"strategy":"xpath","selector":"//[not(child::)]","context":"","multiple":true} [debug] [JSONWP Proxy] Got response with status 200: {"sessionId":"f9e4060b-3d40-477d-9bc9-f00b87a48000","status":0,"value":[{"ELEMENT":"bb643421-ffbb-4b2d-ada7-68f739293d05","rect":{"x":0,"y":75,"width":175,"height":175}},{"ELEMENT":"06437aea-240e-4b32-ad48-19794707265f","rect":{"x":175,"y":75,"width":216,"height":175}},{"ELEMENT":"60c53f58-8081-4495-badf-7764d0850d71","rect":{"x":844,"y":137,"width":47,"height":50}},{"ELEMENT":"599a4ac9-879b-4528-946f-779ff35db697","rect":{"x":969,"y":139,"width":47,"height":47}},{"ELEMENT":"a0dccffd-db40-405f-952f-ff301a023e17","rect":{"x":41,"y":275,"width":998,"height":125}},{"ELEMENT":"8039972c-a5de-4917-bb50-a2fe4b9432ad","rect":{"x":0,"y":425,"width":206,"height":195}},{"ELEMENT":"1938d745-662d-4eb4-8d74-52a9629016ee","rect":{"x":206,"y":425,"width":206,"height":195}},{"ELEMENT":"8acd1201-d9d9-442c-ab62-9bd5b6cfca61","rect":{"x":412,"y":425,"width":206,"height":195}},{"ELEMENT":"fa4deeb2-c7f0-49bf-bd4f-08ece21e3377","rect":{"x":618,"y":425,"width":206,"height":195}},{"ELEMENT":"506c4d08-2404-4774-896d-ca22b8597bfa","... [ai] Getting window size in case we need to scale screenshot [ai] Getting screenshot to use for classifier [debug] [JSONWP Proxy] Matched '/screenshot' to command name 'getScreenshot' [debug] [JSONWP Proxy] Proxying [GET /screenshot] to [GET http://localhost:8202/wd/hub/session/f9e4060b-3d40-477d-9bc9-f00b87a48000/screenshot] with no body [debug] [JSONWP Proxy] Got response with status 200: "{\"sessionId\":\"f9e4060b-3d40-477d-9bc9-f00b87a48000\",\"status\":0,\"value\":\"iVBORw0KGgoAAAANSUhEUgAABDgAAAeACAIAAACkA3BdAAAAA3NCSVQICAjb4U\/gAAAgAElEQVR4\nnOzdd3xc1Zk\/\/uecW6fPqFuy5SL3XpAN2Biw6d2k0EPCEkglG7JfCKT9drOBkB+b7KZ\/SVgCJKGE\ngOnVdNsYN9yNjdxky7a6NPW2c75\/jC1rZu6M2jTZz\/vFH4BGc+8djUbnc895nkMmf68NEEIIIYQQ\nQqiY0EKfAEIIIYQQQgglw6CCEEIIIYQQKjoYVBBCCCGEEEJFB4MKQgghhBBCqOhgUEEIIYQQQggV\nHQwqCCGEEEIIoaKDQQUhhBBCCCFUdDCoIIQQQgghhIoOBhWEEEIIIYRQ0cGgghBCCCGEECo6YqFP\nIBklUB2g8+uki2fLs2pFRSICBUKOfZUxYByCUbb6M\/OVjdrmA1Z7mAEA54U8Z4QQQgghhFB2kcnf\nayv0OQAAUAIlbvp\/LnOcO012yoQeTyY9EaW3eCyJZ5OOMPvbSu2vH8RCGse4ghBCCCGE0Mmh8EGF\nEJg+UvzF9a5RpQIhQO2SSWacA+PwyX7zjkeD7SEMKwghhBBCCA17hQwqhMCYMuHBG12Tq8VB5JMk\nnIPJ4MyfdIRiwyOrUAKqTEQKonDif3IOpgWGBTFjeFwFQgghhBBCuVCwGhWBwncvdn5psSpS+\/Vd\nA0UICBSWTJNeWK9n4elyRhTAoxKHTLwOMmeMOMIvlHlOXL\/F4HAnO9hubdpvaQYP6zwc46z4Mgsh\nUO6hIwL00yZLM3HRHUIIFdiyeqU6QINR\/tgHsUKfS9\/q68SagFBTktDR51A7O9RhrW0wC3VWQ1RX\nKZS6k3sUtYVYw1GrIOdzqnngOveEKqHvxwHsPmLd\/UQo... [ai] Turning screenshot into HTML image for use with canvas [ai] Getting screenshot slices for each element [ai] Making label predictions based on element images [ai] Predictions for 19 element(s) took 2.797 seconds [ai] Found 0 matching elements [ai] Resetting element response attribute setting to original value: "" [UiAutomator2] Forwarding the following settings to the UiAutomator2 server: ["elementResponseAttributes"] [debug] [JSONWP Proxy] Matched '/appium/settings' to command name 'updateSettings' [debug] [JSONWP Proxy] Proxying [POST /appium/settings] to [POST http://localhost:8202/wd/hub/session/f9e4060b-3d40-477d-9bc9-f00b87a48000/appium/settings] with body: {"settings":{"elementResponseAttributes":""}} [debug] [JSONWP Proxy] Got response with status 200: {"sessionId":"f9e4060b-3d40-477d-9bc9-f00b87a48000","status":0,"value":true} [debug] [W3C (223b1a7b)] Encountered internal error running command: NoSuchElementError: An element could not be located on the page using the given search parameters. [debug] [W3C (223b1a7b)] at AndroidUiautomator2Driver. (/Users/qpaas/Downloads/appium-1.9.2-beta.2/node_modules/appium-base-driver/lib/basedriver/commands/find.js:172:13) [debug] [W3C (223b1a7b)] at Generator.throw () [debug] [W3C (223b1a7b)] at asyncGeneratorStep (/Users/qpaas/Downloads/appium-1.9.2-beta.2/node_modules/@babel/runtime/helpers/asyncToGenerator.js:3:24) [debug] [W3C (223b1a7b)] at _throw (/Users/qpaas/Downloads/appium-1.9.2-beta.2/node_modules/@babel/runtime/helpers/asyncToGenerator.js:29:9) [HTTP] <-- POST /wd/hub/session/223b1a7b-5963-4512-99fd-8029f858f3db/element 404 10924 ms - 696 [HTTP]

Code To Reproduce Issue [ Good To Have ] import java.net.*; import java.util.HashMap;

import org.openqa.selenium.*; import org.openqa.selenium.remote.DesiredCapabilities;

import io.appium.java_client.*; import io.appium.java_client.android.AndroidDriver;

public class scr {

@SuppressWarnings("rawtypes") public static AppiumDriver driver;

@SuppressWarnings("rawtypes")
public static void main(String[] args) throws MalformedURLException, InterruptedException{
    // TODO Auto-generated method stub
    DesiredCapabilities capability=new DesiredCapabilities();
    capability.setCapability("platformName","Android");
    capability.setCapability("platformVersion","8.0");
    capability.setCapability("automationName", "uiautomator2");
    capability.setCapability("deviceName","Nexus 5X");
    capability.setCapability("noReset",true);
    capability.setCapability("appPackage","com.flipkart.android");
    capability.setCapability("appActivity","com.flipkart.android.SplashActivity");
    HashMap<String, String> customFindModules = new HashMap<>();
      customFindModules.put("ai", "test-ai-classifier");
      capability.setCapability("customFindModules", customFindModules);
      capability.setCapability("shouldUseCompactResponses", false); 
     driver=new AndroidDriver(new URL("http://127.0.0.1:4723/wd/hub"),capability);
     driver.findElement("-custom","ai:search").sendKeys("123");
     driver.quit();
}

}

jlipps commented 5 years ago

What happens if you use Java client v7.0.0?

NewUserMob commented 5 years ago

Not even hitting the appium server Environment Appium :1.9.2 beta.2 Java client :7.0 Selenium server standalone :3.12.0 Throwing the below error Exception in thread "main" java.lang.NoClassDefFoundError: org/openqa/selenium/remote/AcceptedW3CCapabilityKeys at io.appium.java_client.remote.NewAppiumSessionPayload.(NewAppiumSessionPayload.java:98) at io.appium.java_client.remote.AppiumCommandExecutor$1.createSession(AppiumCommandExecutor.java:175) at io.appium.java_client.remote.AppiumCommandExecutor.createSession(AppiumCommandExecutor.java:217) at io.appium.java_client.remote.AppiumCommandExecutor.execute(AppiumCommandExecutor.java:239) at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:543) 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:207) at org.openqa.selenium.remote.RemoteWebDriver.(RemoteWebDriver.java:130) at io.appium.java_client.DefaultGenericMobileDriver.(DefaultGenericMobileDriver.java:38) at io.appium.java_client.AppiumDriver.(AppiumDriver.java:84) at io.appium.java_client.AppiumDriver.(AppiumDriver.java:94) at io.appium.java_client.android.AndroidDriver.(AndroidDriver.java:95) at scr.main(scr.java:40) Caused by: java.lang.ClassNotFoundException: org.openqa.selenium.remote.AcceptedW3CCapabilityKeys at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:583) at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178) at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521) ... 15 more