Есть Java приложение.
Есть чекбокс, в UI Spy его свойство:
ControlPatterns
Toggle
ToggleState: “On”
Как проверить состояние элемента?
element.getAttribute(“ToggleState”) выдает null.
Есть Java приложение.
Есть чекбокс, в UI Spy его свойство:
ControlPatterns
Toggle
ToggleState: “On”
Как проверить состояние элемента?
element.getAttribute(“ToggleState”) выдает null.
Используйте свойство веб-элемента is_selected()
Спасибо огромное… Чет я пропустил этот метод :).
Еще один вопрос, если можно:
Есть ли возможность, используя Winium, найти элементы, в имени которых есть определенное значение?
Например, найти все элементы в имени которых есть “Session”.
Заранее спасибо.
Да, это возможно используя поиск по XPath. Это поможет составить запрос Winium.Cruciatus/CheckFindByXPath.cs at master · 2gis/Winium.Cruciatus · GitHub
Столкнулся с проблемой поиска по xpath элемента, который находится далеко в дереве. Поиск занимает 3-4 минуты. При этом поиск по имени, или по xpath root элемента проходит моментально… Xpath с // ищет от parent элемента или от рута? Как можно выйти из ситуации?
WebElement parent = driver.findElement(By.name("View Name"));
parent.findElement(By.xpath("//*[contains(@Name, 'Sub Child Name')]"));
Заранее спасибо.
Типо нужные тебе элементы не непосредственные дети parent? Может быть *//*[… Я оч не люблю xpath, а точнее каждый раз опытным путем определяю его, так что сильнее помочь не могу
В любом случае простой поиск виниума работает в глубину, а по xpath в ширину.
Нужные элементы как раз дети (где-то 3-го порядка). Но такое ощущение, что он ищет от root. Т.к. время ±одинаковое, что от драйвера искать, что от элемента, а сам элемент очень “глубоко” от рута. Сегодня еще попробую поэкспериментировать, В любом случае спасибо.
Вообщем да, я не знаю стопудово как начать xpath чтоб это означало - от текущего в самую глубину ))))
Так что когда найдется решение, отпиши сюда, это будет очень полезный опыт.
В общем пришел к выводу, что //*[] ищет по всему драйверу даже от элемента, *[] - только первый child от драйвера или элемента. Пока воркэраунд:
WebElement parent = driver.findElement(By.name("View Name"));
parent.findElement(By.xpath("*[contains(@Name, 'ElementFirstChild Name')]//*[contains(@Name, 'FarChild Name')]"));
Как я понял Drag and Drop еще не запилили? Планируется ли вообще в ближайшее время, очень не хватает
Извиняюсь за долгий ответ.
Для drag&drop нужно уметь перемещать мышку, зажимать и отжимать кнопку мыши. Да, первая часть то есть, а вот второй нет.
Вроде не сложно реализовать и даже открывали PR по этому поводу, но я отсутствовал и не мог посмотреть. В любом случае стоит завести на это issue
Спасибо за ответ. Надеюсь в скором времени появится.
Пока нашел workaround - сделал метод который вытаскивает из свойства элемента координаты и возвращает rectangle, ну а его использую для Sikuli DnD…