t.me/atinfo_chat Telegram группа по автоматизации тестирования

How to click on part text view python Appium

Теги: #<Tag:0x00007f7487f4a6e8> #<Tag:0x00007f7487f4a5d0>

Может кто знает как такое можно зделать -
У меня есть TextView c ID = ‘com.roadie.android.app.qa:id/list_item_available_credits_subtitle_textview’
и с текстом " Earn more credits by Inviting Friends or by redeeming a Promo Code."
і там ‘Inviting Friends’ і ‘Promo Code’ ето линки.

если я кликаю по всему ID то Appium клікает по ‘Inviting Friends’

Как мне кликнуть по ‘Promo Code’?

Правильно ли я понимаю что сейчас вы кликаете как-то так:
wd.findElement.By(id("com.roadie.android.app.qa:id/list_item_available_credits_subtitle_textview"));
?

В зависимости от того что внутри TextView можно найти вторую ссылку либо используя xpath (By.xpath("//com.roadie.android.app.qa ...), либо добавив дополнительный findElement:
wd.findElement.By(id("com.roadie.android.app.qa:id/list_item_available_credits_subtitle_textview")).findElement(By. ...)

Предсказать какой там локатор не могу, так как вы не привели что находится внутри TextView, так как там явно не только текст :smile:

И, к слову, почему не искать локаторы в inspector?

1 Симпатия

findElement.By(xpath(’//*[contains(@text,“Promo Code”)]’)).click();

Ай-яй-яй :wink:

Нашел к чему придраться :smiley:

вот xpath - http://snag.gy/CVrsj.jpg

а такой поиск есть - byLinkText($value)?

не понял, что ты имеешь в виду?
byLinkText($value)

поиск по ссылке содержащей текст $value

LinkText и partialLinkText не работает у меня, есть еще идеи?

Тогда вычисляй координаты и тапай по ним