2016-07-20 3 views
0

Я хотел бы присвоить настраиваемый атрибут элементам в макете приложения и написать тест автоматизации, который находит элементы по данному атрибуту.Appium android - найти элемент по атрибуту

, например, макет содержит:

<RelativeLayout android:id="myId" 
       android:background="..." 
       android:my-attribute="myValue"> 

И я пытаюсь найти элемент по:

androidDriver.findElement(By.xpath("//[@my-attribute=\"myValue\"]"); 

Однако водитель не может найти элемент.

Я также попытался

androidDriver.findElement(By.id("myId").getAttribute("my-attribute"); 

Но я получаю нуль на GetAttribute ..

является поиск по атрибутам поддерживается на Android? Поддерживается ли она в Appium? Если да, есть ли у меня синтаксическая ошибка?

ответ

1

Извините, я не могу комментировать сообщения. Вы можете видеть my-attribute в uiautomatorviewer? Если вы можете, то это должно быть возможно, но есть также функции, которые не поддерживаются в зависимости от того, какую версию Android вы используете.

+0

Я не вижу мой атрибут в автозагрузчике ui. Я использую SDK и эмулятор Android android 6 (Marshmallow). Есть идеи? – haimlit

+0

Appium использует uiautomatoviewer как ссылку на какой элемент или атрибут для доступа. Все, что я знаю, это то, что если вы не видите его там, вы не можете его получить. Но если вы хотите получить некоторые ответы, я нашел https://github.com/appium/appium/issues/5142. Надеюсь, это поможет. – Daniel

+0

Да, я видел это, надеялся, что я что-то упустил. Благодаря! – haimlit

Смежные вопросы