find
Получите дочерние элементы DOM по определённому селектору.
Поведение запроса в этой команде полностью соответствует тому, как работает
.find()в jQuery.
Синтаксис
.find(selector)
.find(selector, options)
Использование
Правильное использование
cy.get('.article').find('footer') // Yield 'footer' within '.article'
Неправильное использование
cy.find('.progress') // Errors, cannot be chained off 'cy'
cy.exec('node start').find() // Errors, 'exec' does not yield DOM element
Аргументы
selector (строковый селектор)
Селектор для фильтрации совпадающих дочерних элементов DOM.
options (объект)
Передайте объект с опциями для изменения стандартного поведения .find().
| Опция | Значение по умолчанию | Описание |
|---|---|---|
log |
true |
Отображает команду в журнале команд |
timeout |
defaultCommandTimeout |
Время ожидания .find() для разрешения до превышения времени ожидания
|
includeShadowDom |
includeShadowDom значение конфигурации |
Указывает, следует ли переходить через границы теневого DOM и включать элементы в теневом DOM в результирующем наборе. |
Возвращаемое значение
-
.find()возвращает новые найденные элементы DOM.
Примеры
Селектор
Получение li внутри родителя
<ul id="parent">
<li class="first"></li>
<li class="second"></li>
</ul>
// yields [<li class="first"></li>, <li class="second"></li>]
cy.get('#parent').find('li')
Правила
Требования
-
.find()требует использования после команды, возвращающей элементы DOM.
Ассершены
-
.find()автоматически будет повторно выполняться до тех пор, пока элемент(ы) не появятся в DOM -
.find()автоматически будет повторно выполняться до тех пор, пока все цепные ассершены не пройдут
Превышение времени ожидания
-
.find()может превысить время ожидания, ожидая появления элемента(ов) в DOM . -
.find()может превысить время ожидания, ожидая прохождения добавленных ассершенов.
Журнал команд
Найти li внутри nav
cy.get('.left-nav>.nav').find('>li')
Вышеуказанные команды будут отображаться в журнале команд как:
При нажатии на команду find в журнале команд, консоль выведет следующее:
История
| Версия | Изменения |
|---|---|
| 5.2.0 | Добавлена опция includeShadowDom |
См. также
© 2017 Cypress.io
Licensed under the MIT License.
https://docs.cypress.io/api/commands/find