Как найти элементы при запуске приложения на genymotion с appium? - PullRequest
0 голосов
/ 01 октября 2019

У меня есть работа в среде:

  • Eclipse
  • Версия Appium 1.8.1
  • Ionic V3, Android API 23
  • GenymotionВерсия 3.0.2
  • Эмулятор Genymotion Samsung Galaxy S6
  • элементы имеют идентификатор в HTML

Когда я запускаю apk на реальном устройстве и проверяю логин, этоработают нормально.

Когда я запускаю apk на genymotion, приложение открыто правильно, но элементы не могут быть найдены, следуя затмению в журнале консоли:

[debug] [35m [AndroidBootstrap] [39m Отправка команды на android: {"cmd": "action", "action": "find", "params": {"стратегии": "id", "селектор": "usuario", "context": "", "multiple": false}} [debug] [35m [AndroidBootstrap] [39m [BOOTSTRAP LOG] [debug] Получены данные от клиента: {"cmd": "action", "action": "find","params": {"стратегии": "идентификатор", "селектор": "usuario", "контекст": "", "несколько": false}} [отладка] [35m [AndroidBootstrap] [39m [LOG BOOTSTRAP] [debug] Получил команду типа ACTION [debug] [35m [AndroidBootstrap] [39m [BOOTSTRAP LOG] [debug] Полученное действие команды: find [debug] [35m [AndroidBootstrap] [39m [BOOTSTRAP LOG] [debug] Поиск 'usuario' с использованием 'ID' с contextId: '' multiple: false [debug][35м [AndroidBootstrap] [39м [BOOTSTRAP LOG] [отладка] Использование: UiSelector [INSTANCE = 0, RESOURCE_ID = com.vtrapp.tecnico: id / usuario] [отладка] [35м [AndroidBootstrap] [39м [BOOTSTRAP LOG] [отладка]] Использование: UiSelector [INSTANCE = 0, RESOURCE_ID = android: id / usuario] [debug] [35m [AndroidBootstrap] [39m [BOOTSTRAP LOG] [debug] Использование: UiSelector [INSTANCE = 0, RESOURCE_ID = usuario] [debug] [35м [AndroidBootstrap] [39м [BOOTSTRAP LOG] [отладка] Использование: UiSelector [ОПИСАНИЕ = usuario, INSTANCE = 0] [отладка] [35м [AndroidBootstrap] [39м [BOOTSTRAP LOG] [отладка] Не удалось найти элемент. Очистка кеша доступности и повторная попытка. [debug] [35m [AndroidBootstrap] [39m [LOG BOOTSTRAP] [debug] Поиск 'usuario' с использованием 'ID' с contextId: '' множественный: false [debug] [35m [AndroidBootstrap] [39m [BOOTSTRAP LOG] [debug] Использование: UiSelector [INSTANCE = 0, RESOURCE_ID = com.vtrapp.tecnico: id / usuario] [отладка] [35m [AndroidBootstrap] [39m [BOOTSTRAP LOG] [отладка] Использование: UiSelector [INSTANCE = 0, RESOURCE_ID = android:id / usuario] [debug] [35m [AndroidBootstrap] [39m [LOG BOOTSTRAP] [debug] Использование: UiSelector [INSTANCE = 0, RESOURCE_ID = usuario] [debug] [35m [AndroidBootstrap] [39m [BOOTSTRAP LOG] [debug]Использование: UiSelector [DESCRIPTION = usuario, INSTANCE = 0] [debug] [35m [AndroidBootstrap] [39m Полученный результат команды от начальной загрузки [debug] [35m [MJSONWP] [39m Соответствует коду ошибки JSONWP 7 для NoSuchElementError [debug] [35m []AndroidBootstrap] [39m [BOOTSTRAP LOG] [debug] Возвращаемый результат: {"status": 7, "value": "Элемент не найден"} [35m [HTTP] [39m [37m <- POST / wd / hub / session)/ 8dceea19-1303-46e5-a5e3-40d89ce2cb96 / element [39м [33м404 [39м [90м59487 мс - 1107 [39м [35м][HTTP] [39m [90m [39m Исключение в потоке «main» org.openqa.selenium.NoSuchElementException: элемент не может быть расположен на странице с использованием заданных параметров поиска. Для документации по этой ошибке, пожалуйста, посетите: <a href="https://www.seleniumhq.org/exceptions/no_such_element.html" rel="nofollow noreferrer">https://www.seleniumhq.org/exceptions/no_such_element.html Информация о сборке: версия: '3.141.59', редакция: 'e82be7d358', время: '2018-11-14T08: 17: 03' Информация о системе: хост:'DESKTOP-4E9I01S', ip: '169.254.4.145', os.name: 'Windows 10', os.arch: 'amd64', os.version: '10 .0 ', java.version:' 1.8.0_201 'Информация о драйвере: io.appium.java_client.android.AndroidDriver

Код:

caps.setCapability("deviceName", "Android");
caps.setCapability("udid", "192.168.211.105:5555"); //Device ID Emulator Genymotion
caps.setCapability("platformName", "Android");
caps.setCapability("platformVersion", "8.0");
caps.setCapability("appPackage", "com.vtrapp.tecnico");
caps.setCapability("appActivity", "com.vtrapp.tecnico.MainActivity");
caps.setCapability("noReset", "true");

Я не понимаю, связь, очевидно, между appium и genymotion работает нормальнопотому что приложение было открыто, но тогда элементы не найдены. Помогите мне, пожалуйста

...