Как найти элемент



БАC позволяет искать элемент разными способами: по CSS, по части разметки, по XPath и по координатам.

По умолчанию уникальный селектор будет создан для вас автоматически, и вам не нужно беспокоиться об этом.

Но вы можете изменить стандартный селектор или создать свой собственный путем редактирования следующего поля:

Этот виджет появляется в любом действии, которое выполняется на элементе.

Виджет расположен в верхнем правом углу.



Давайте рассмотрим следующие примеры:

Css селекторы

Все CSS селекторы предваряются >CSS> префиксом, этот префикс сообщает БАС, что используется CSS.



>CSS> #element-id

Найти элемент по id.



>CSS> .element-class

Найти элемент по классу.



>CSS> [attribute*="value part"]

Найти элемент, аттрибут которого содержит value part.

Смотрите это руководство пользователя для получения дополнительной информации https://developer.mozilla.org/ru/docs/Web/Guide/CSS/Getting_started/Selectors



Несколько >CSS> префиксов может быть совмещено:

>CSS> #element-parent >CSS> #element-id-child

Найти элемент с id element-child внутри элемента с id element-parent



Вы можете найти элемент по номеру, используя >AT> префикс.

>CSS> .element-class >AT> 0

Первый элемент с классом element-class

Этот селектор идентичен:

>CSS> .element-class



>CSS> .element-class>AT> 1

Найти второй элемент с классом element-class



Переменные и ресурсы могут быть использованы вместо точных значений:

>CSS> #element-class >AT> [[CYCLE_INDEX]]

Найти [[CYCLE_INDEX]] элемент с классом element-class



Вы можете совмещать столько префиксов, сколько нужно:

>CSS> #element-parent >CSS> #element-id-child >AT> 0

Match селекторы

Match является еще одним типом селекторов. Он выбирает элемент, по части его разметки. Если у вас есть элемент с следующей разметкой:

Вы можете найти его с помощью

>MATCH>title="Search"

Любая часть разметки подойдет:

>MATCH>autocomplete="off" title="Search"

>MATCH>tle="Search"

и т. д.



Также, как в случае с css, вы можете совмещать несколько префиксов:

>MATCH>match1>MATCH>match2



Использовать >AT> префикс:

>MATCH>match1>AT>0



И совмещать с другими префиксами:

>MATCH>match1>CSS>css1>AT>0



Важно избегать использования дополнительных пробелов с >MATCH>. Дополнительные пробелы стают частью селектора и могут повлиять на результат.

Не верно:

>MATCH> match1
Верно:
>MATCH>match1



XPATH селекторы

БАС позволяет делать xpath запросы с помощью >XPATH> приставки.

Например:

>XPATH> (//a)[last()]

Найти последнюю ссылку.

Вы можете совмещать >XPATH>, >CSS>, >MATCH> и >AT>



Xpath запрос внутри определенного элемента должен быть относительным (должны начинаться с точки).

>XPATH> //*[@id='element-parent'] >XPATH> .//*[@id='element-child']



Фреймы

Вы можете получить доступ к содержимому фрейма с помощью >FRAME> префикса



>CSS> #frame-id >FRAME> >CSS> #element-id

Этот запрос выбирает элемент с id element-id внутри фрейма с идентификатором frame-id



Вложенные фреймы также поддерживаются:

>CSS> #frame-id1 >FRAME> >CSS> #frame-id2 >FRAME> >CSS> #element-id

Этот запрос выбирает элемент с id element-id внутри фрейма с идентификатором frame-id2 внутри фрейма с идентификатором frame-id1



Конечно, могут быть использованы несколько префиксов

>CSS> iframe >AT> 1 >FRAME> >CSS> #element-id

Этот запрос выбирает элемент с идентификатором element-id внутри второго фрейма