#android #automation #appium #ui-automation
#Android #автоматизация #appium #пользовательский интерфейс-автоматизация
Вопрос:
Я пытаюсь выполнить приведенный ниже код, не удается перейти к определенному элементу
Желаемые возможности c=new DesiredCapabilities(); c.setCapability(CapabilityType.ИМЯ_БРАУЗЕРА, «»); c.setCapability(«DeviceName», «ZZ2222HMLF»); c.setCapability(«platformName», «Android»); c.setCapability(«platformversion», «7.0»); c.setCapability(MobileCapabilityType.ПРИЛОЖЕНИЕ, «D:AppiumedTheSIS_11_02_2019.apk «); //c.setCapability(«noReset», true); //c.setCapability(«autoGrantPermissions», «true»); c.setCapability(«appPackage», «com.sisapp.in.sisapp»); c.setCapability(«AppActivity»,» md5b1afd03e09ce5243fd0287b176ff38ea.MainActivity»); URL U=новый URL(«http://127.0.0.1:4723/wd/hub«); драйвер WebDriver= новый AndroidDriver (U, c);
В моей консоли отображается ошибка, показанная ниже
log4j: ПРЕДУПРЕЖДЕНИЕ для logger не удалось найти отправителей (org.apache.http.client.protocol.RequestAddCookies). log4j: ПРЕДУПРЕЖДЕНИЕ, пожалуйста, правильно инициализируйте систему log4j. log4j: ПРЕДУПРЕЖДЕНИЕ См. http://logging.apache.org/log4j/1.2/faq.html#noconfig для получения дополнительной информации. Исключение в потоке «main» org.openqa.selenium.Исключение WebDriverException: при обработке команды произошла неизвестная ошибка на стороне сервера. Исходная ошибка: не удается запустить приложение ‘com.sisapp.in.sisapp’. Посетите https://github.com/appium/appium/blob/master/docs/en/writing-running-appium/android/activity-startup.md для устранения неполадок. Исходная ошибка: ошибка при выполнении adbExec. Исходная ошибка: ‘Command’D:AppiumSdktoolsadb.exe -P 5037 -s ZZ2222HMLF shell am start -W -n com.sisapp.in.sisapp/md5b1afd03e09ce5243fd0287b176ff38ea.MainActivity -S’ завершен с кодом 1′; Stderr: ‘java.lang.Исключение SecurityException: отказ в разрешении: начальное намерение { flg= 0x10000000 cmp=com.sisapp.in.sisapp/md5b1afd03e09ce5243fd0287b176ff38ea.MainActivity } из null (pid = 26065, uid = 2000) не экспортировано из uid 11113 в android.os.Parcel.readException(Parcel.java:1683) в android .os.Parcel.readException(Parcel.java:1636) в android.app.ActivityManagerProxy.startActivityAndWait(ActivityManagerNative.java:3280) в com.android.commands.am.Am.runStart(Am.java:630) в com.android.commands.am.Am.OnRun(Am.java:388) в com.android.internal.os.BaseCommand.run(BaseCommand.java:51) в com.android.commands. am.Am.main(Am.java:121) на com.android.internal.os.RuntimeInit.nativeFinishInit (собственный метод) на com.android.internal.os.RuntimeInit.main(RuntimeInit.java:294)’; Код: ‘1’ Информация о сборке: версия: ‘3.8.1’, редакция: ‘6e95a6684b’, время: ‘2017-12-01T19:05:14.666Z’ Информация о системе: хост: ‘GSPSDELL30’, ip: ‘10.10.4.192’, os.name: ‘Windows 7’, os.arch: ‘amd64’, os.version: ‘6.1’, java.version: ‘1.8.0_151’ Информация о драйвере: driver.version: AndroidDriver remote stacktrace: UnknownError: при обработке команды произошла неизвестная ошибка на стороне сервера. Исходная ошибка: не удается запустить приложение ‘com.sisapp.in.sisapp’. Посетите https://github.com/appium/appium/blob/master/docs/en/writing-running-appium/android/activity-startup.md для устранения неполадок. Исходная ошибка: ошибка при выполнении adbExec. Исходная ошибка: ‘Command’D:AppiumSdktoolsadb.exe -P 5037 -s ZZ2222HMLF shell am start -W -n com.sisapp.in.sisapp/md5b1afd03e09ce5243fd0287b176ff38ea.MainActivity -S’ завершен с кодом 1′; Stderr: ‘java.lang.Исключение SecurityException: отказ в разрешении: начальное намерение { flg= 0x10000000 cmp=com.sisapp.in.sisapp/md5b1afd03e09ce5243fd0287b176ff38ea.MainActivity } из null (pid = 26065, uid = 2000) не экспортировано из uid 11113 в android.os.Parcel.readException(Parcel.java:1683) в android .os.Parcel.readException(Parcel.java:1636) в android.app.ActivityManagerProxy.startActivityAndWait(ActivityManagerNative.java:3280) в com.android.commands.am.Am.runStart(Am.java:630) в com.android.commands.am.Am.OnRun(Am.java:388) в com.android.internal.os.BaseCommand.run(BaseCommand.java:51) в com.android.commands. am.Am.main(Am.java:121) в com.android.internal.os.RuntimeInit.nativeFinishInit(собственный метод) в com.android.internal.os.RuntimeInit.main(RuntimeInit.java:294)’; Код: ‘1’ в getResponseForW3CError (C:Userspreethi.gAppDataLocalappium-desktopapp-1.10.0resourcesappnode_modulesappium-base-driverlibprotocolerrors.js:826:9 ) в AsyncHandler (C:Userspreethi.gAppDataLocalappium-desktopapp-1.10.0resourcesappnode_modulesappium-base-driverlibprotocolprotocol.js:447:37 ) в процессе._tickCallback (internal/process/next_tick.js:68:7) в sun.reflect.NativeConstructorAccessorImpl.newInstance0(собственный метод) в sun.reflect.NativeConstructorAccessorImpl.newInstance(неизвестный источник) в sun.reflect.Делегирование constructoraccessorimpl.newInstance (неизвестный источник) на java.lang.reflect.Конструктор.Новый экземпляр (неизвестный источник) в org.openqa.selenium.remote.W3CHandshakeResponse.lambda$new $0(W3CHandshakeResponse.java:57) в org.openqa.selenium.remote.W3CHandshakeResponse.lambda$getResponseFunction $ 2 (W3CHandshakeResponse.java:104) в org.openqa.selenium.remote.ProtocolHandshake.lambda $CreateSession $ 0 (ProtocolHandshake.java: 123) в java.util.stream.Ссылочный конвейер $ 3 $ 1.принять (неизвестный источник) в java.util.Spliterators$ArraySpliterator.tryAdvance (неизвестный источник) в java.util.stream.Ссылочный конвейер.forEachWithCancel (неизвестный источник) на java.util.stream.AbstractPipeline.copyIntoWithCancel(неизвестный источник) в java.util.stream.AbstractPipeline.copyInto (неизвестный источник) в java.util.stream.AbstractPipeline.wrapAndCopyInto (неизвестный источник) в java.util.stream.FindOps$FindOp.evaluateSequential (неизвестный источник) в java.util.stream.AbstractPipeline.evaluate (неизвестный источник) в java.util.stream.Ссылка на pipeline.findFirst (неизвестный источник) в org.openqa.selenium.remote.ProtocolHandshake.CreateSession(ProtocolHandshake.java: 126) в org.openqa.selenium.remote.ProtocolHandshake.CreateSession(ProtocolHandshake.java:73) в org.openqa.selenium.remote.HttpCommandExecutor.execute(HttpCommandExecutor.java:142) в io.appium.java_client.remote.AppiumCommandExecutor.execute(AppiumCommandExecutor.java:89) в org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java: 601) в io.appium.java_client.DefaultGenericMobileDriver.execute(DefaultGenericMobileDriver.java:42) в io.appium.java_client.AppiumDriver.execute(AppiumDriver.java:1) в io.appium.java_client.android.AndroidDriver.execute(AndroidDriver.java: 1) в организации.openqa.selenium.remote.RemoteWebDriver.StartSession(RemoteWebDriver.java:219) в org.openqa.selenium.remote.RemoteWebDriver.(RemoteWebDriver.java:142) в io.appium.java_client.DefaultGenericMobileDriver по умолчанию.(DefaultGenericMobileDriver.java:38) в io.appium.java_client.AppiumDriver.(AppiumDriver.java:83) в io.appium.java_client.AppiumDriver.(AppiumDriver.java:93) в io.appium.java_client.android.AndroidDriver.(AndroidDriver.java: 72) в Mobileapp1.Apptesting.main(Apptesting.java:33)
Appium server log:
[Appium] Добро пожаловать в Appium версии v1.10.0 [Appium] Прослушиватель http-интерфейса Appium REST запущен в 0.0.0.0: 4723 [HTTP] —> POST / wd/ hub / session [HTTP] {«desiredCapabilities»:{«app»:»D:AppiumedTheSIS_11_02_2019.apk»,»appActivity»:»md5b1afd03e09ce5243fd0287b176ff38ea.MainActivity»,»appPackage»:»com.sisapp.in.sisapp»,»browserName»:»»,»deviceName»:»ZZ2222HMLF»,»platformName»:»Android»,»platformversion»:»7.0″},»capabilities»:{«desiredCapabilities»:{«app»:»D:AppiumedTheSIS_11_02_2019.apk»,»appActivity»:»md5b1afd03e09ce5243fd0287b176ff38ea.MainActivity»,»appPackage»:»com.sisapp.in.sisapp»,»browserName»:»»,»deviceName»:»ZZ2222HMLF»,»platformName»:»Android»,»platformversion»:»7.0″},»firstMatch»:[{«browserName»:»»,»platformName»:»android»}]}} [W3C] Вызываю AppiumDriver.CreateSession() с аргументами: [{«приложение»:»D:AppiumedTheSIS_11_02_2019 .apk»,»AppActivity»: «md5b1afd03e09ce5243fd0287b176ff38ea.MainActivity»,»appPackage»:»com.sisapp.in.sisapp»,»browserName»:»»,»deviceName»:»ZZ2222HMLF»,»platformName»:»Android»,»platformversion»:»7.0″},null,{«desiredCapabilities»:{«app»:»D:AppiumedTheSIS_11_02_2019.apk»,»appActivity»:»md5b1afd03e09ce5243fd0287b176ff38ea.MainActivity»,»appPackage»:»com.sisapp.in.sisapp»,»browserName»:»»,»deviceName»:»ZZ2222HMLF»,»platformName»:»Android»,»platformversion»:»7.0″},»firstMatch»:[{«browserName»:»»,»platformName»:»android»}]}] Событие [BaseDriver] ‘newSessionRequested’ зарегистрировано в 1552558812095 (15: 50: 12 GMT 0530 (стандартное время Индии)) [Appium] Не удалось проанализировать возможности W3C: ‘DeviceName’ не может быть пустым [Appium] Пытаюсь исправить возможности W3C, объединив их с JSONWP caps [BaseDriver] Возможности [«app», «AppActivity», «appPackage», «DeviceName», «platformversion»] не являются стандартными возможностями и должны иметь префикс расширения [Appium], создающий новые возможности сеанса AndroidDriver (версия 4.8.0) [Appium]: Приложение [Appium]: D:AppiumedTheSIS_11_02_2019.apk [Appium]
AppActivity: md5b1afd03e09ce5243fd0287b176ff38ea.MainActivity [Appium] appPackage: com.sisapp.in.sisapp [Appium] Имя устройства: ZZ2222HMLF [Appium] версия платформы: 7.0 [Appium] Имя браузера: [Appium]
platformName: android [BaseDriver] Возможности W3C {«alwaysMatch»:{«appium: app… и требуемые возможности MJSONWP {«приложение»:»D:AppiumedTheSI … были предоставлены [BaseDriver] для создания сеанса с возможностями W3C: {«alwaysMatch»:{«appium: приложение… [BaseDriver] Были предоставлены следующие возможности, но они не распознаются appium: platformversion. Сеанс [BaseDriver] создан с идентификатором сеанса: 1b0921bc-0535-4428- a57a-356bafe42833 [AndroidDriver] Версия Java: 1.8.0_151 [ADB] Проверка наличия adb [ADB] Переменной среды ANDROID_HOME не задан путь к корневому каталогу Android SDK. Для совместимости с SDK 23 требуется ANDROID_HOME. Проверка по пути для adb. [ADB] Использование adb из D:AppiumSdktoolsadb.exe [ADB] [AndroidDriver] Извлекает список устройств [ADB] Пытается найти подключенное устройство Android [ADB] Получает подключенные устройства… [ADB] подключено 1 устройство (ы) [AndroidDriver] Использование устройства: ZZ2222HMLF [ADB] Установка идентификатора устройства на ZZ2222HMLF [ADB] Запуск ‘D:AppiumSdktoolsadb.exe -Страница 5037 -s ZZ2222HMLF shell getprop ro.build.version.sdk’ [ADB] Текущее свойство устройства ‘ro.build.version.sdk’: 24 [ADB] Уровень API устройства: 24 [AndroidDriver] Рассмотрите возможность установки ‘automationName’ на ‘uiautomator2’ на Android > = 6, поскольку платформа UIAutomator framework больше не поддерживается поставщиком ОС. [BaseDriver] Использование локального приложения ‘D:AppiumedTheSIS_11_02_2019.apk ‘ [AndroidDriver] Проверка того, действительно ли приложение присутствует [AndroidDriver] Запуск сеанса Android [ADB] Запущен ‘D:AppiumSdktoolsadb.exe -P 5037 -s ZZ2222HMLF ожидание устройства «[ADB] запущено»D:AppiumSdktoolsadb.exe -P 5037 -s ZZ2222HMLF shell echo ping’ [AndroidDriver] Отправляет настройки apk на устройство… [ADB] Получение статуса установки для io.appium.settings [ADB] Запущен ‘D:AppiumSdktoolsadb.exe -P 5037 -s ZZ2222HMLF shell dumpsys package io.appium.settings’ [ADB] установлен ‘io.appium.settings’ [ADB] Получение информации о пакете для запуска ‘io.appium.settings’ [ADB] ‘D:AppiumSdktoolsadb.exe -P 5037 -s ZZ2222HMLF shell dumpsys package io.appium.settings’ [ADB] Проверка наличия aapt [ADB] Переменной среды ANDROID_HOME не задан путь к корневому каталогу Android SDK. Для совместимости с SDK 23 требуется ANDROID_HOME. Проверка по пути для aapt. [ADB] Использование aapt из D:AppiumSdkbuild-tools26.0.1aapt.exe [ADB] [ADB] Название версии установленного ‘io.appium.settings’ больше или равно названию версии приложения (‘2.11.0’ >= ‘2.11.0’) [ ADB] Нет необходимости устанавливать / обновлять ‘C:Userspreethi.gAppDataLocalappium-desktopapp-1.10.0resourcesappnode_modulesio.appium.settingsapkssettings_apk-debug.apk ‘[ADB] Запущен’D:AppiumSdktoolsadb.exe -P 5037 -s ZZ2222HMLF shell ps’ [AndroidDriver] io.appium.settings уже запущен. Нет необходимости сбрасывать его разрешения. [ADB] Уровень API устройства: 24 [ADB] Запущено ‘D:AppiumSdktoolsadb.exe -P 5037 -s ZZ2222HMLF shell appops устанавливает io.appium.settings android: mock_location разрешает ‘ [Logcat] Запуск logcat capture [ADB] Запуск версии платформы устройства [ADB] ‘D:AppiumSdktoolsadb.exe -P 5037 -s ZZ2222HMLF shell getprop ro.build.version.release’ [ADB] Текущее свойство устройства ‘ro.build.version.release’: запущено 7.0 [ADB] ‘D:AppiumSdktoolsadb.exe -P 5037 -s ZZ2222HMLF размер wm оболочки ‘[ADB] Запущен’D:AppiumSdktoolsadb.exe -Страница 5037 -s ZZ2222HMLF shell getprop ro.product.model’ [ADB] Текущее свойство устройства ‘ro.product.model’: Moto C Plus [ADB] запущен ‘D:AppiumSdktoolsadb.exe -P 5037 -s ZZ2222HMLF shell getprop ro.product.manufacturer’ [ADB] Текущее свойство устройства ‘ro.product.manufacturer’: motorola [ADB] Получает статус установки для запущенного com.sisapp.in.sisapp [ADB] ‘D:AppiumSdktoolsadb.exe -P 5037 -s ZZ2222HMLF shell dumpsys пакет com.sisapp.in.sisapp’ [ADB] установлен com.sisapp.in.sisapp’ [ADB], получающий статус установки для запущенного com.sisapp.in.sisapp [ADB] ‘D:AppiumSdktoolsadb.exe -P 5037 -s ZZ2222HMLF shell dumpsys пакет com.sisapp.in.sisapp’ [ADB] установлен ‘com.sisapp.in.sisapp’ [ADB], получающий информацию о пакете для запуска ‘com.sisapp.in.sisapp’ [ADB] ‘D:AppiumSdktoolsadb.exe -P 5037 -s ZZ2222HMLF shell dumpsys package com.sisapp.in.sisapp’ [ADB] Код версии установленного ‘com.sisapp.in.sisapp’ больше, чем код версии приложения (23 > 22) [ADB] Нет необходимости устанавливать / обновлять ‘D:AppiumedTheSIS_11_02_2019.apk ‘ [AndroidDriver] Выполнение быстрого сброса в ‘com.sisapp.in.sisapp’ [ADB] Получение статуса установки для com.sisapp.in.Запущено sisapp [ADB] ‘D:AppiumSdktoolsadb.exe -P 5037 -s ZZ2222HMLF установлен пакет dumpsys оболочки com.sisapp.in.sisapp’ [ADB] ‘com.sisapp.in.sisapp’ [ADB] Запущен ‘D:AppiumSdktoolsadb.exe -P 5037 -s оболочка ZZ2222HMLF принудительно останавливает com.sisapp.in.sisapp ‘[ADB] Запущен’D:AppiumSdktoolsadb.exe -P 5037 -s ZZ2222HMLF shell pm очистил com.sisapp.in.sisapp’ [AndroidDriver] Выполнил быстрый сброс установленного приложения ‘com.sisapp.in.sisapp’ (остановить и очистить) [ADB] Запущено ‘D:AppiumSdktoolsadb.exe -P 5037 -s оболочка ZZ2222HMLF rm -rf /data /local/tmp/strings.json’ [AndroidDriver] Извлекает строки из apk [AndroidDriver] D:AppiumedTheSIS_11_02_2019.apk [AndroidDriver] не определено [AndroidDriver] C:Userspreethi.gAppDataLocalTempcom.sisapp.in.sisapp [ADB] Извлечение строк из for language: default [ADB] Успешно извлек 175 строк из ‘D:AppiumedTheSIS_11_02_2019.apk «ресурсы для» (по умолчанию) «запущенной конфигурации [ADB]»D:AppiumSdktoolsadb.exe -P 5037 -s ZZ2222HMLF push C:Userspreethi.gAppDataLocalTempcom.sisapp.in.sisappstrings.json /data /local /tmp’ [AndroidBootstrap] Следит за отключением начальной загрузки [ADB] Система пересылки: 4724 на устройство: 4724 [ADB] Запущено ‘D:AppiumSdktoolsadb.exe -P 5037 -s ZZ2222HMLF пересылка tcp: 4724 tcp: 4724’ [UIAutomator] Запуск UIAutomator [UIAutomator] Переход в состояние «запуск» [UIAutomator] Разбор jar-файла uiautomator [UIAutomator] Найденное имя jar: ‘AppiumBootstrap.jar «[ADB] Запущен»D:AppiumSdktoolsadb.exe -P 5037 -s ZZ2222HMLF push C:Userspreethi.gAppDataLocalappium-desktopapp-1.10.0resourcesappnode_modulesappium-android-driverbootstrapbinAppiumBootstrap.jar /data/local /tmp/’ [ADB] Попытка уничтожить все процессы uiautomator [ADB] Запуск всех процессов с uiautomator [ADB] ‘D:AppiumSdktoolsadb.exe -P 5037 -s ZZ2222HMLF shell ps’ [ADB] Не найден процесс ‘uiautomator’ [UIAutomator] Запуск UIAutomator [ADB] Создание подпроцесса ADB с аргументами: [«-P»,5037,»-s»,»ZZ2222HMLF»,»shell»,»uiautomator»,»runtest»,»AppiumBootstrap.jar»,»-c»,»io.appium.android.bootstrap.Bootstrap»,»-e»,»pkg»,»com.sisapp.in.sisapp»,»-e»,»disableAndroidWatchers»,false,»-e»,»acceptSslCerts»,false] [UIAutomator] Переходит в состояние «онлайн» [AndroidBootstrap] [BOOTSTRAP LOG] [debug] загрузка json завершена. [AndroidBootstrap] Теперь подключен сокет начальной загрузки Android [ADB], запущен ‘D:AppiumSdktoolsadb.exe -На странице 5037 -s ZZ2222HMLF shell dumpsys window’ [AndroidBootstrap] [ЖУРНАЛ начальной загрузки] [отладка] Зарегистрированы наблюдатели за сбоями. [AndroidBootstrap] [ЖУРНАЛ начальной загрузки] [отладка] Экран подключенного клиента [AndroidDriver] уже разблокирован, ничего не выполняется [ADB] Уровень API устройства: 24 [ADB] Запущен ‘D:AppiumSdktoolsadb.exe -P 5037 -s ZZ2222HMLF shell запускаю -W -n com.sisapp.in.sisapp/md5b1afd03e09ce5243fd0287b176ff38ea.MainActivity -S’ [ADB] Запущен’D:AppiumSdktoolsadb.exe -P 5037 -s ZZ2222HMLF shell am start -W -n com.sisapp.in.sisapp/md5b1afd03e09ce5243fd0287b176ff38ea.MainActivity -S’ [AndroidDriver] Завершает работу драйвера Android [ADB] ‘D:AppiumSdktoolsadb.exe -P 5037 -s оболочка ZZ2222HMLF принудительно останавливает com.sisapp.in.sisapp’ [ADB] Нажатием кнопки HOME [ADB] Выполняется ‘D:AppiumSdktoolsadb.exe -P 5037 -s ZZ2222HMLF shell input keyevent 3’ [AndroidBootstrap] Отправка команды на Android: {«cmd»: «shutdown»} [AndroidBootstrap] [ЖУРНАЛ начальной загрузки] [отладка] Получены данные из клиента: {«cmd»: «shutdown»} [AndroidBootstrap] [ЖУРНАЛ начальной загрузки] [отладка] Получена команда типа SHUTDOWN [AndroidBootstrap] [ЖУРНАЛ начальной загрузки] [debug], возвращающая результат: {«status»: 0,»value»: «OK, завершение работы»} [AndroidBootstrap] Получен результат команды из bootstrap [UIAutomator], завершающий работу UIAutomator [UIAutomator], переходящий в состояние ‘stoping’ [AndroidBootstrap] [UIAUTO STDOUT] закрыть [сокет][::/:::4724] [ AndroidBootstrap] [ЖУРНАЛ начальной загрузки] [отладка] Закрытое клиентское соединение [AndroidBootstrap] [UIAUTO STDOUT] INSTRUMENTATION_STATUS: numtests= 1 [AndroidBootstrap] [UIAUTO STDOUT] INSTRUMENTATION_STATUS: stream=. [AndroidBootstrap] [СТАНДАРТНЫЙ вывод UIAUTO] INSTRUMENTATION_STATUS: id= UiAutomatorTestRunner [AndroidBootstrap] [СТАНДАРТНЫЙ вывод UIAUTO] INSTRUMENTATION_STATUS: test= testRunServer [AndroidBootstrap] [СТАНДАРТНЫЙ вывод UIAUTO] INSTRUMENTATION_STATUS: class= io.appium.android.bootstrap.Bootstrap [AndroidBootstrap] [UIAUTO STDOUT] INSTRUMENTATION_STATUS_CODE: current=1 [AndroidBootstrap] [UIAUTO STDOUT] INSTRUMENTATION_STATUS_CODE: 0 [UIAutomator] UIAutomator нормально завершает работу [UIAutomator] Переходит в состояние «остановлено» [ADB] Пытается завершить все процессы uiautomator [ADB] Получает все процессы с запущенным uiautomator [ADB] ‘D:AppiumSdktoolsadb.exe -P 5037 -s ZZ2222HMLF shell ps’ [ADB] Не найден процесс ‘uiautomator’ [UIAutomator] Переходит в состояние ‘stopped’ [Logcat] Запуск logcat capture [ADB] Прекращен ‘D:AppiumSdktoolsadb.exe -P 5037 -s Оболочка ZZ2222HMLF принудительно останавливает io.appium.unlock’ [AndroidDriver], не очищая сгенерированные файлы. При желании добавьтеclearSystemFiles
возможность. Событие [BaseDriver] ‘newSessionStarted’ зарегистрировано в 1552558837127 (15:50:37 GMT 0530 (стандартное время Индии)) [W3C] Обнаружена внутренняя ошибка при выполнении команды: Ошибка: не удается запустить приложение ‘com.sisapp.in.sisapp’. Посетите https://github.com/appium/appium/blob/master/docs/en/writing-running-appium/android/activity-startup. md для устранения неполадок. Исходная ошибка: ошибка при выполнении adbExec. Исходная ошибка: ‘Command’D:AppiumSdktoolsadb.exe -P 5037 -s ZZ2222HMLF shell am start -W -n com.sisapp.in.sisapp/md5b1afd03e09ce5243fd0287b176ff38ea.MainActivity -S’ завершен с кодом 1′; Stderr: ‘java.lang.Исключение SecurityException: отказ в разрешении: начальное намерение { flg= 0x10000000 cmp=com.sisapp.in.sisapp/md5b1afd03e09ce5243fd0287b176ff38ea.MainActivity } из null (pid= 27285, uid = 2000) не экспортировано из uid 11113 [W3C] в android.os.Parcel.readException(Parcel.java: 1683) [W3C] в android.os.Parcel.readException(Parcel.java:1636) [W3C] в android.app.ActivityManagerProxy.startActivityAndWait(ActivityManagerNative.java:3280) [W3C] в com.android.commands.am.Am.runStart(Am.java:630) [W3C] в com.android.commands.am.Am.OnRun(Am.java:388) [W3C] в com .android.internal.os.BaseCommand.run(BaseCommand.java:51) [W3C] на com.android.commands.am.Am.main(Am.java:121) [W3C] на com.android.internal.os.RuntimeInit.nativeFinishInit(собственный метод) [W3C] на com.android.internal.os.RuntimeInit.main(RuntimeInit.java:294)’; Код: ‘1’ [W3C] на ADB. apkUtilsMethods.Стартовое приложение (C:Userspreethi.gAppDataLocalappium-desktopapp-1.10.0resourcesappnode_modulesappium-adblibtoolsapk-utils.js:144:11 ) [W3C] в процессе._tickCallback (internal/process/next_tick.js:68:7) [HTTP] <— POST / wd/ hub / session 500 25191 ms — 3184 [HTTP]
Ответ №1:
При установке приложения с использованием Appium на устройстве вам также необходимо запустить это действие.
Просто добавьте приведенные ниже возможности в свой код :
c.setCapability("appPackage", "<PACKAGE_NAME>");
c.setCapability("appActivity", "LOGINSCREEN_ACTIVITY_NAME");
Ниже приведен пример возможностей для запуска приложения Amazon:
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability(CapabilityType.BROWSER_NAME, "");
capabilities.setCapability("deviceName", "<DEVICE_ID>");
capabilities.setCapability("platformVersion", "<ANDROID_VERSION>");
capabilities.setCapability("platformName", "Android");
capabilities.setCapability("app", app.getAbsolutePath());
capabilities.setCapability("appPackage", "in.amazon.mShop.android.shopping");
capabilities.setCapability("appActivity", "com.amazon.mShop.home.HomeActivity");
Комментарии:
1. Отображается ошибка в строке ниже:capabilities.setCapability(«приложение», app.getAbsolutePath());
2. Вы должны заменить это на местоположение вашего APK-файла.
3. добавлено, что по-прежнему выдается ошибка, поскольку не удается запустить приложение ‘com.sisapp.in.sisapp’. Команда ‘D:\Appium\Sdk\tools\adb.exe -P 5037 -s ZZ2222HMLF shell запускаю -W -n com.sisapp.in.sisapp/md5b1afd03e09ce5243fd0287b176ff38ea.MainActivity -S завершается с кодом 1
4. Можете ли вы опубликовать журнал консоли Appium.
5. Я обновил сообщение об ошибке консоли, пожалуйста, проверьте
Ответ №2:
Чтобы узнать пакет приложения и активность приложения, я установил приложение apk info и нашел действия в activities и теперь могу открыть приложение.
Ответ №3:
- Я использовал указанные ниже желаемые возможности для запуска приложения в настройках эмулятора
- Вы можете вызвать функцию getAppiumDriver(), чтобы запустить настройку драйвера и приложение на указанном эмуляторе.
-
Лучший способ — установить Appium Desktop и опробовать нужные возможности из консоли инспектора на Appium Desktop.
protected static AppiumDriver appDriver; protected AppiumDriver getAppiumDriver() throws MalformedURLException { if(appDriver == null) { DesiredCapabilities cap = new DesiredCapabilities(); File appDir = new File("FOLDER LOCATION OF .APK"); /* ANDROID DEPENDENCIES START*/ File newApp = new File (appDir ,"APPLICATIONNAME.APK" ); cap.setCapability(CapabilityType.BROWSER_NAME, ""); cap.setCapability("deviceName", "Nexus5XAPI26"); cap.setCapability("udid", "HT4AXJT03545"); cap.setCapability("platformName", "Android"); cap.setCapability("platformVersion","7.1.1"); cap.setCapability("automationName", "UiAutomator2"); /* ANDROID DEPENDENCIES END */ cap.setCapability("app", newApp.getAbsolutePath()); appDriver = new AppiumDriver(new URL("http://0.0.0.0:4723/wd/hub"), cap); } return appDriver; }