Appium. Как найтиElement для активности с флагом android: launchMode = "singleInstance"?

Я столкнулся с проблемой при создании автоматического теста для собственного приложения для Android (с использованием appium из webdriver.io + typescript).

В настоящее время я пытаюсь нажать кнопку по идентификатору для активности, которая имеет android:launchMode = "singleInstance" в манифесте Android.

Я столкнулся с проблемой, что appium не может найти ни одного элемента в этом действии. Журнал выглядит так:

[debug] [JSONWP Proxy] Proxying [POST /elements] to [POST http://localhost:8203/wd/hub/session/8938c098-48e6-4e7b-b9fd-4cf69034058c/elements] with body: {"strategy":"id","selector":"callStatus","context":"","multiple":true}
[debug] [JSONWP Proxy] Got response with status 200: {"sessionId":"8938c098-48e6-4e7b-b9fd-4cf69034058c","status":0,"value":[]}
[debug] [MJSONWP] Responding to client with driver.findElements() result: []

КСТАТИ. Я не могу проверить эту активность с помощью UIAutomatorView, похоже, проблема также связана с этим.

если убрать флаг android:launchMode = "singleInstance" - все будет нормально.

Как решить эту проблему?

Как найти элемент активности с флагом android:launchMode = "singleInstance"?

1
0
243
1

Ответы 1

Если драйвер не может найти элемент, проверьте, с какой XML-структурой он сталкивается в данный момент: driver.source ()

Возможно, он вернет XML-представление другой активности / фрагмента. Вы также можете дважды проверить количество контекстов, которые у вас есть на данный момент: driver.contexts ();

Если существует более одного контекста NATIVE_APP, вам может потребоваться переключить другой.

tnx за советом. проверю

Alex Cap 16.10.2018 08:31

К сожалению, есть только один контекст = (

Alex Cap 22.10.2018 13:04

А как насчет вывода driver.source ()? Вы элементы с текущего экрана или с предыдущего?

dmle 22.10.2018 19:14

Собственно, причину сбоев Appium я нашел. Просто увеличено время ожидания waitForExist до 20 секунд (ранее было 10) из-за некоторого странного поведения. Отображается активность, но Appium не может найти ни одного элемента в течение 10 секунд.

Alex Cap 23.10.2018 10:19

Другие вопросы по теме