Size: a a a

Selenide на русском

2020 August 04

AV

Alex Vasinskiy in Selenide на русском
Всем привет, есть у кого то опыт подключения екстеншина впн и в нем сразу  выбирать страну
источник

YI

Yuri Ivanov in Selenide на русском
Не думаю, что работа с эктенженом впн, отличается от работы с другими экстенженами
источник

YI

Yuri Ivanov in Selenide на русском
источник
2020 August 05

Y

Yuriy in Selenide на русском
Вот продолжение моего вопроса - надо засетить время в текстовое поле в котором как-то даже  текста как такового нету..
источник

Y

Yuriy in Selenide на русском
1 - само текстовое поле на странице
источник

Y

Yuriy in Selenide на русском
2 его ДОМ свойства
источник

YI

Yuri Ivanov in Selenide на русском
Попробуй установить Value для этого поля
источник

YI

Yuri Ivanov in Selenide на русском
Только в правильном для поля формате
источник

YI

Yuri Ivanov in Selenide на русском
Возможно, также потребуется дернуть событие onChange, чтобы сработал указанный в поле обработчик и всё подтянулось куда надо
источник

YI

Yuri Ivanov in Selenide на русском
executeJavaScript(
               "var agGridHeaderInput = " +
                       "document" +
                       ".evaluate(arguments[0], document.body, null, XPathResult.UNORDERED_NODE_ITERATOR_TYPE, null)" +
                       ".iterateNext();" +
                       "var onInputEvent = new Event('input', {'bubbles': true, 'cancelable': true});" +
                       "agGridHeaderInput.dispatchEvent(onInputEvent);",
               String.format(HEADER_INPUT_LOCATOR_STRING, columnId));
источник

YI

Yuri Ivanov in Selenide на русском
Вот пример, как можно найти элемент через JS и вызвать одно из его событий
источник

YI

Yuri Ivanov in Selenide на русском
Также, если стандартными средствами не получается установить value этого поля, можно сделать это напрямую, через js
источник

YI

Yuri Ivanov in Selenide на русском
executeJavaScript(
                   "document.querySelector(arguments[0]).value = arguments[1];",
                   cssLocator,
                   value);
источник

YI

Yuri Ivanov in Selenide на русском
так или вот так
источник

YI

Yuri Ivanov in Selenide на русском
executeJavaScript(
                   "document" +
                           ".evaluate(arguments[0], document, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null)" +
                           ".singleNodeValue" +
                           ".value = arguments[1];",
                   xpathLocator,
                   value);
источник

B

Bola in Selenide на русском
в селениде нельзя так?
executeJsScript("arguments[0].value = arguments[1]", webElement, value)
источник

YI

Yuri Ivanov in Selenide на русском
не пробовал
источник

YI

Yuri Ivanov in Selenide на русском
В любом случае, чтобы этот webElement получить нужен локатор :) Так что не очень большая разница.
источник

B

Bola in Selenide на русском
сам JS скрипт выглядит короче и понятнее
и без плясок с css/xpath

зы: в nodejs биндингах так работает без  проблем
источник

YI

Yuri Ivanov in Selenide на русском
Проверил, можно. Так что можно и на более простой вариант заменить.
источник