Проблема с сервером Appium: ошибка: более одного устройства / эмулятора »; Код: «1» »

Проблема. Я пытаюсь запустить один тест на нескольких смартфонах Android параллельно для приложения Instagram с Python.

У меня очень популярный вопрос:

«Обнаружена внутренняя ошибка при выполнении команды: Ошибка при выполнении adbExec. Исходная ошибка: «Команда» C: \ Users \ Nino \ AppData \ Local \ Android \ Sdk \ platform-tools \ adb.exe -P 5037 -s 53519716736397 forward tcp: 4725 tcp: 6790 'завершена с кодом 1'; Stderr: 'adb.exe: ошибка: более одного устройства / эмулятора'; Код: «1» »

Я нашел много тем по этой проблеме, но не нашел решения. Даже на форумах или здесь никто не дает однозначного решения. Все перенаправляют вас к руководству: https://github.com/appium/appium/blob/master/docs/en/advanced-concepts/parallel-tests.md#parallel-android-tests

Среда Вот результат «adb devices -l»:

List of devices attached:
0123456789ABCDEF device product:X20 model:X20 device:X20 transport_id:1 
1492968379078 device product:S6S5IN3G > model:S6S5IN3G device:S6S5IN3G transport_id:3 
53519716736397 device product:S6S5IN3G model:S6S5IN3G device:S6S5IN3G transport_id:2

Я прочитал его и соблюдаю все правила, описанные в этом руководстве. Вот мои возможности:

desired_caps['systemPort'] = 4728
desired_caps['chromeDriverPort'] = 4728
desired_caps['automationName'] = 'UiAutomator2'
desired_caps['platformName'] = ‘Android’
desired_caps['platformVersion'] = ‘7’
desired_caps['deviceName'] = ‘20’
desired_caps['udid'] = ‘0123456789ABCDEF’
desired_caps['noReset'] = 'true'
desired_caps['appPackage'] = 'com.instagram.android'
desired_caps['appActivity'] = 'com.instagram.mainactivity.MainActivity'

деталь: 1. Порт 4728 - это итеративная переменная (4728,4729,4730) для моих 3 устройств Android. Вы можете увидеть их в файле журнала APpium. 2. Я пробовал с «chromeDriverPort» и без него. Это ничего не изменило.

Я обновляю версию SDK: 26.1.1 Я обновляю Node.js: v12.14.1 Я обновляю Appium Server: 1.15.1 Я обновляю Appium-Python-Client: 0.49

Я повторно запускаю свой скрипт Python, и ничего не изменилось. Я все еще понимаю это

«Ошибка: более одного устройства / эмулятора»; Код: «1» »

Ссылка на журналы Appium. Здесь вы можете найти журнал моего Appium: https://github.com/gauthierbuttez/public/blob/master/appium_log.txt


person Gauthier Buttez    schedule 02.02.2020    source источник


Ответы (1)


systemPort - должен быть уникальным для каждого устройства

chromeDriverPort - не обязательно

platformVersion ‘7’ - должно быть 7.0

Кроме того, ваш port экземпляра appium должен отличаться от systemPort, в моих тестах я использовал такие порты, как 4720, 4730, 4735 и т. Д., И системные порты, такие как 8200, 8201, 8202 и т. Д.

person Vault23    schedule 03.02.2020
comment
Спасибо @ Vault23 за попытку мне помочь. Мой системный порт отличается от порта экземпляра Appium. Я использую 4728 и 4725 для моих двух подключенных реальных устройств ANdroid, и я запускаю сервер Appium на 4723 - person Gauthier Buttez; 09.02.2020