родитель
Получить родительский DOM-элемент набора DOM-элементов.
Обратите внимание, что .parent() перемещается только на один уровень вверх по дереву DOM, в отличие от команды .parents().
Поведение запроса этой команды точно соответствует тому, как работает
.parent()в jQuery.
Синтаксис
.parent()
.parent(selector)
.parent(options)
.parent(selector, options)
Использование
Правильное использование
cy.get('header').parent() // Yield parent el of `header`
Неправильное использование
cy.parent() // Errors, cannot be chained off 'cy'
cy.reload().parent() // Errors, 'reload' does not yield DOM element
Аргументы
selector (Строковый селектор)
Селектор, используемый для фильтрации соответствующих DOM-элементов.
options (Объект)
Передайте объект опций для изменения стандартного поведения .parent().
| Опция | Значение по умолчанию | Описание |
|---|---|---|
log |
true |
Отображает команду в Журнале команд |
timeout |
defaultCommandTimeout |
Время ожидания, в течение которого .parent() должен разрешиться, прежде чем время истечёт
|
Возвращаемые значения
-
.parent()возвращает новые найденные DOM-элементы.
Примеры
Без аргументов
Получить родителя активного li
<ul class="main-nav">
<li>Overview</li>
<li>
Getting started
<ul class="sub-nav">
<li>Install</li>
<li class="active">Build</li>
<li>Test</li>
</ul>
</li>
</ul>
// yields .sub-nav
cy.get('li.active').parent()
Селектор
Получить родителя с классом sub-nav всех li элементов
<ul class="main-nav">
<li>Overview</li>
<li>
Getting started
<ul class="sub-nav">
<li>Install</li>
<li class="active">Build</li>
<li>Test</li>
</ul>
</li>
</ul>
// yields .sub-nav
cy.get('li').parent('.sub-nav')
Правила
Требования
-
.parent()требует, чтобы вы использовали её после команды, возвращающей DOM-элемент(ы).
Утверждения
-
.parent()автоматически повторяется до тех пор, пока элемент(ы) не существуют в DOM -
.parent()автоматически повторяется до тех пор, пока все цепные утверждения не пройдут
Таймауты
-
.parent()может превысить время ожидания, ожидая, пока элемент(ы) не существуют в DOM . -
.parent()может превысить время ожидания, ожидая выполнения утверждений.
Журнал команд
Утверждение на родителя активного li
cy.get('li.active').parent().should('have.class', 'nav')
Вышеуказанные команды будут отображаться в Журнале команд как:
При нажатии на команду parent в журнале команд в консоль выводится следующее:
См. также
© 2017 Cypress.io
Licensed under the MIT License.
https://docs.cypress.io/api/commands/parent