Как получить значение элемента на C#

gera

Client
Регистрация
10.12.2021
Сообщения
45
Благодарностей
5
Баллы
8
Приветствую. Как на C# можно получить значение элемента из андройда? например, текстовая строка (для ввода) или надпись где то на каком-то ином элементе.
По мануалам на Appium есть метод GetText(), но его почему то нет в ZDP, а toString() возвращает название другого объекта.
 

gera

Client
Регистрация
10.12.2021
Сообщения
45
Благодарностей
5
Баллы
8
Сам же и отвечаю на свой вопрос:
через GetAttribute("text");
но, от сюда теперь вопрос - какие атрибуты поддерживаются?
и почему нельзя было сделать по мануалам Appium`а методы и вот это всё? читаешь на него мануал, одно. а тут другое. не очень удобно.
 

radv

Client
Регистрация
11.05.2015
Сообщения
3 691
Благодарностей
1 871
Баллы
113

Anatoly79

Moderator
Регистрация
17.04.2020
Сообщения
379
Благодарностей
270
Баллы
63
Приветствую. Как на C# можно получить значение элемента из андройда? например, текстовая строка (для ввода) или надпись где то на каком-то ином элементе.
По мануалам на Appium есть метод GetText(), но его почему то нет в ZDP, а toString() возвращает название другого объекта.
element.Text возвращает значение текстового поля (text или content-desc)

При попытке запросить несуществующий атрибут будут выданы все возможные. element.GetAttribute("wrong_attribute") выдаст: Only the following attributes are supported: [checkable, checked, {class,className}, clickable, {content-desc,contentDescription}, enabled, focusable, focused, {long-clickable,longClickable}, package, password, {resource-id,resourceId}, scrollable, selection-start, selection-end, selected, {text,name}, bounds, displayed, contentSize]
 

gera

Client
Регистрация
10.12.2021
Сообщения
45
Благодарностей
5
Баллы
8
А есть ли быстрый способ получить координаты элемента?
и второй вопрос - имеется локальная переменная var elem. она используется в цикле for. но, если условие в цикле не подтверждено. то с elem нужно работать дальше за пределами цикла. Но, получаю ошибку, что в данном контексте переменная elem не найдена (за пределами for).
 

gera

Client
Регистрация
10.12.2021
Сообщения
45
Благодарностей
5
Баллы
8
element.Text возвращает значение текстового поля (text или content-desc)

При попытке запросить несуществующий атрибут будут выданы все возможные. element.GetAttribute("wrong_attribute") выдаст: Only the following attributes are supported: [checkable, checked, {class,className}, clickable, {content-desc,contentDescription}, enabled, focusable, focused, {long-clickable,longClickable}, package, password, {resource-id,resourceId}, scrollable, selection-start, selection-end, selected, {text,name}, bounds, displayed, contentSize]
пишет, что нет такого метода, как Text.
"does not contain a definition for 'Text'..."
 

gera

Client
Регистрация
10.12.2021
Сообщения
45
Благодарностей
5
Баллы
8
Пытаюсь понять, как кликать по элементам не через elem.click, а по координатам. Для этого пытаюсь получить эти самые координаты по атрибуту bounds. Засунул в CommonCode и получил ошибку - нет такого атрибута bounds. т.е. я так понимаю, что пока атрибут не найден (элемент с атрибутом), вызывать GetAttribute нельзя? т.е. имеется в виду, что разместить такой код не выйдет в CommonCode?
 

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)