Сейчас я изучаю кипарис для сквозного тестирования. Документация Cypress очень хорошо поддерживается, и в ней есть все необходимое, что может понадобиться каждому.
Итак, не теряя времени, давайте перейдем к методам кипариса, которые мы сегодня обсудим. Первым в списке является метод get(), который необходим для поиска веб-элементов на основе локаторов.
получить()
Метод get(), как следует из его названия, выполняет ту же функцию, для которой предназначено его название. Он получает элементы на основе селектора, переданного в качестве параметра, и элементов может быть один или несколько. Он может возвращать веб-элемент или список веб-элементов.
Синтаксис:cy.get(селектор) или cy.get(селектор, параметры)
Примеры:
Если вы хотите получить элемент типа ввода.
cy.get('input')
Укажите ведение журнала как false. Кроме того, он пропустит печать вывода команды на консоли Cypress Test runners.
cy.get('input',{ log: false })
Дождитесь явного тайм-аута
cy.get('input',{ timeout: 1000 }) // It will wait for 1000ms before timing out
Требования
cy.get()
требует привязки к команде, которая дает элемент(ы) DOM.
находить()
Метод find() получает элемент-потомок внутри DOM определенного селектора.
Синтаксис
.find(selector)
.find(selector, options)
Применение
cy.get('.article').find('footer') // Yield 'footer' within '.article'
Примеры
<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("a[href*=footer]")
Требования
.find()
требует привязки к команде, которая дает элемент(ы) DOM.
в пределах
Охватывает все последующие команды cy внутри этого элемента. Метод inside() становится очень полезным при работе с определенной группой элементов, таких как <form>
.
Синтаксис
.within(callbackFn)
.within(options, callbackFn)
Применение
cy.get('.list').within(($list) => {}) // Yield the `.list` and scope all commands within it
Примеры
Получение входных данных в форме и отправка формы
<form> <input name="email" type="email" /> <input name="password" type="password" /> <button type="submit">Login</button> </form>
cy.get('form').within(($form) => {
// cy.get() will only search for elements within form, // not within the entire document cy.get('input[name="email"]').type('[email protected]') cy.get('input[name="password"]').type('password') cy.root().submit() })
Требования
.within()
требует привязки к предыдущей команде.
Кредиты: я хотел бы упомянуть кипарисовую документацию и внешние веб-сайты, которые были бы хорошей отправной точкой для новичков, чтобы начать изучать кипарис.