root
Получить корневой элемент DOM.
Синтаксис
cy.root()
cy.root(options)
Использование
Правильное использование
cy.root() // Yield root element <html>
cy.get('nav').within(($nav) => {
cy.root() // Yield root element <nav>
})
Аргументы
options (Объект)
Передайте объект options, чтобы изменить поведение по умолчанию .root().
| Опция | Значение по умолчанию | Описание |
|---|---|---|
log |
true |
Отображает команду в журнале команд |
timeout |
defaultCommandTimeout |
Время ожидания cy.root() для разрешения перед выходом из времени ожидания
|
Возвращаемое значение
.root() возвращает корневой элемент DOM.
Возвращаемый корневой элемент по умолчанию — <html>. Однако при вызове .root() из команды .within() корневой элемент будет указывать на элемент, внутри которого вы находитесь.
Примеры
HTML
Получение корневого элемента
cy.root() // yields <html>
Within
Получение корневого элемента в функции обратного вызова .within()
cy.get('form').within(($form) => {
cy.get('input[name="email"]').type('john.doe@email.com')
cy.get('input[name="password"]').type('password')
cy.root().submit() // submits the form yielded from 'within'
})
Правила
Требования
-
cy.root()требует цепочки команд отcy.
Утверждения
-
cy.root()автоматически повторит попытку до тех пор, пока все цепочки утверждений не пройдут
Таймауты
-
cy.root()может выйти за пределы времени ожидания, ожидая, пока утверждения, которые вы добавили, не пройдут.
Журнал команд
Получение корневого элемента
cy.root().should('match', 'html')
cy.get('.query-ul').within(() => {
cy.root().should('have.class', 'query-ul')
})
Вышеприведенные команды отобразятся в журнале команд как:
При нажатии на команду root в журнале команд, консоль выведет следующее:
См. также
© 2017 Cypress.io
Licensed under the MIT License.
https://docs.cypress.io/api/commands/root