Я использую Appium в своих мобильных тестах и хотел бы получить текст элемента. Я могу получить элемент, используя accessibility-id
и xpath
. Вот код, используемый для получения элемента:
firstId = 'xpath', '//XCUIElementTypeStaticText[@name="5 Roles"]'
или
secondId = 'accessibility_id', '5 Roles'
или
thirdId = 'xpath', '//XCUIElementTypeProgressIndicator/following-sibling::XCUIElementTypeOther[1]'
Тогда я пытаюсь чтобы получить атрибут элемента. Я предпочитаю использовать третий идентификатор вместо двух других, упомянутых выше. Я использую следующий код для получения атрибута:
def get_attribute_element(self, element):
el = self.get_element(element)
el_value = el.get_attribute('label')
return el_value
При использовании firstId и secondId код успешно выбирает атрибут и мои тесты проходят, но при использовании thirdId мои тесты не выполняются как el_value=None
, Я понятия не имею, почему он возвращает None
, когда идентификатор использует родного брата. Я проверил третий идентификатор в инспекторе Appium, и он правильно идентифицирует элемент в приложении, а также уникальный идентификатор.