Spec-Zone.ru › Cypress

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')

Вышеуказанные команды будут отображаться в журнале команд как:

Command Log find

При нажатии на команду find в журнале команд, консоль выведет следующее:

console.log find

История

Версия Изменения
5.2.0 Добавлена опция includeShadowDom

См. также

  • cy.get()

© 2017 Cypress.io
Licensed under the MIT License.
https://docs.cypress.io/api/commands/find

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API