WebDriverHelper#
- public class WebDriverHelper#
New in version 1.1.0: добавлены методы для взаимодействия с динамически меняющейся dom-моделью.
Набор вспомогательных средств для взаимодействия с
WebDriver
.
Constructors#
WebDriverHelper#
Methods#
findElementBy#
- public WebElement findElementBy(By by)#
Найти
WebElement
поBy
-селектору.- Parameters
by – механизм поиска
- Returns
html-элемент
findElementWithAttribute#
- public WebElement findElementWithAttribute(String dataAttributeName, String value)#
Найти на dom-модели dom-элемент с указанным атрибутом и его значением.
- Parameters
dataAttributeName – Название атрибута
value – значение атрибута
- Returns
dom-элемент
findElementWithAttributes#
- public final WebElement findElementWithAttributes(XAttribute<java.lang.String, java.lang.String>... attributes)#
Найти на dom-модели dom-элемент со всеми указанными значениями указанных атрибутов.
- Parameters
attributes – атрибуты со значениями
- Returns
dom-элемент
findElementsBy#
- public List<WebElement> findElementsBy(By by)#
Найти список
WebElement
-ов поBy
-селектору.- Parameters
by – механизм поиска
- Returns
список html-элементов
findElementsWithAttribute#
- public List<WebElement> findElementsWithAttribute(String dataAttributeName, String value)#
Найти на dom-модели все dom-элементы с указанным атрибутом и указанным значением.
- Parameters
dataAttributeName – название атрибута
value – значение атрибута
- Returns
список dom-элементов
findElementsWithAttributes#
- public final List<WebElement> findElementsWithAttributes(XAttribute<java.lang.String, java.lang.String>... attributes)#
Найти на dom-модели все dom-элементы, содержащие указанные атрибуты с указанными значениями.
- Parameters
attributes – атрибуты со значениями
- Returns
список dom-элементов
getElementName#
getRootWebElement#
- public Optional<WebElement> getRootWebElement()#
Возвращает ссылку на
WebElement
, который будет являться корнем при поиске элементов методами wait* и find*.Если значение не указано, поиск будет производиться от корня Html-дерева документа.
- Returns
элемент html-дерева
getWaitTimeout#
getWebDriver#
isVisibleInViewport#
- public boolean isVisibleInViewport(WebElement element)#
Проверить, отображается ли dom-элемент внутри окна браузера. По факту, выполняется проверка, что углы dom-элемента находятся внутри окна.
- Parameters
element – dom-элемент
- Returns
true если отображается
of#
- public static WebDriverHelper of(WebDriver webDriver)#
presenceOfNestedElementsToBeMoreThan#
- public static ExpectedCondition<List<WebElement>> presenceOfNestedElementsToBeMoreThan(WebElement rootWebElement, By locator, Integer number)#
Ожидание количества элементов по условию в родительском элементе не менее заданного количества.
- Parameters
rootWebElement – родительский элемент
locator – условие поиска элементов
number – заданное количество
- Returns
Boolean true когда размер списка найденных элементов равен или более заданному количеству
scrollIntoView#
- public void scrollIntoView(WebElement element)#
Подскроллить страницу так, чтоб элемент оказался внутри окна, а не за границей.
- Parameters
element – dom-элемент
setElementName#
- public WebDriverHelper setElementName(String elementName)#
Устанавливает значение свойства
getElementName()
.- Parameters
elementName – Новое имя.
- Returns
Текущий экземпляр
WebDriverHelper
.
setRootWebElement#
- public WebDriverHelper setRootWebElement(WebElement rootWebElement)#
Устанавливает значение свойства
getRootWebElement()
.- Parameters
rootWebElement – новое значение
- Returns
Текущий экземпляр
WebDriverHelper
.
setWaitTimeout#
- public WebDriverHelper setWaitTimeout(Duration duration)#
Устанавливает значение свойства
getWaitTimeout()
.- Parameters
duration – Длительность
- Returns
Текущий экземпляр
WebDriverHelper
.
waitElementBy#
- public WebElement waitElementBy(By by)#
Дождаться появления на dom-модели dom-элемента по
By
-условию- Parameters
by –
By
-условие
- Returns
dom-элемент
waitElementWithAttribute#
- public WebElement waitElementWithAttribute(String dataAttributeName, String value)#
Дождаться появления dom-элемента с указанным значением указанного атрибута.
- Parameters
dataAttributeName – название атрибута
value – значение атрибута
- Returns
dom-элемент
waitElementWithAttributes#
- public final WebElement waitElementWithAttributes(XAttribute<java.lang.String, java.lang.String>... attributes)#
Дождаться появления dom-элемента, содержащего все указанные атрибуты с указанными значениями.
- Parameters
attributes – атрибуты со значениями
- Returns
dom-элемент
waitForDomStability#
- public void waitForDomStability(Duration timeout)#
Подождать прекращения изменений dom-модели. Прекращением считается отсутствие изменений в течении указанного интервала времени.
Перед ожиданием прекращения делается попытка подождать окончания отображения о продолжительной операции
waitUntilMaskDisappears(Duration)
с максимальной продолжительность такого ожидания timeout + 1 секунда.- Parameters
timeout – интервал времени
- Throws
AutomationException
– если произошла ошибка при выполнении скрипта ожидания стабилизации DOM
waitForInteraction#
- public WebElement waitForInteraction(WebElement element)#
Дождаться того, что
WebElement
получит статус interactable (по факту, будет видимым).- Parameters
element – dom-элемент
- Throws
org.openqa.selenium.TimeoutException
– если элемент не стал interactable
- Returns
этот-же dom-элемент