проверка
Установите флажок(и) или радиокнопку(и).
Этот элемент должен быть
<input>с типомcheckboxилиradio.
Синтаксис
.check()
.check(value)
.check(values)
.check(options)
.check(value, options)
.check(values, options)
Использование
Правильное использование
cy.get('[type="checkbox"]').check() // Check checkbox element
cy.get('[type="radio"]').first().check() // Check first radio element
Неправильное использование
cy.check('[type="checkbox"]') // Errors, cannot be chained off 'cy'
cy.get('p:first').check() // Errors, '.get()' does not yield checkbox or radio
Аргументы
значение (Строка)
Значение флажка или радиокнопки, которые нужно установить.
значения (Массив)
Значения флажков или радиокнопок, которые нужно установить.
параметры (Объект)
Передайте объект параметров, чтобы изменить стандартное поведение .check().
| Параметр | Значение по умолчанию | Описание |
|---|---|---|
animationDistanceThreshold |
animationDistanceThreshold |
Расстояние в пикселях, на которое элемент должен превысить значение со временем, чтобы быть считаемым анимацией. |
log |
true |
Отображает команду в журнале команд |
force |
false |
Вынуждает действие, отключает ожидание действия |
scrollBehavior |
scrollBehavior |
Положение области просмотра, в которую элемент должен быть прокручен перед выполнением команды |
timeout |
defaultCommandTimeout |
Время ожидания .check() для разрешения перед выходом за пределы таймаута
|
waitForAnimations |
waitForAnimations |
Нужно ли ожидать, чтобы элементы закончили анимацию перед выполнением команды. |
Возвращаемые значения
-
.check()возвращает тот же объект, что и предыдущая команда.
Примеры
Без аргументов
Установить все флажки
cy.get('[type="checkbox"]').check()
Выбрать все радиокнопки
cy.get('[type="radio"]').check()
Установить флажок с идентификатором 'saveUserName'
cy.get('#saveUserName').check()
Значение
Выбрать радиокнопку со значением 'US'
<form>
<input type="radio" id="ca-country" value="CA" />
<label for="ca-country">Canada</label>
<input type="radio" id="us-country" value="US" />
<label for="us-country">United States</label>
</form>
cy.get('[type="radio"]').check('US')
Значения
Установить флажки со значениями 'subscribe' и 'accept'
<form>
<input type="checkbox" id="subscribe" value="subscribe" />
<label for="subscribe">Subscribe to newsletter?</label>
<input type="checkbox" id="acceptTerms" value="accept" />
<label for="acceptTerms">Accept terms and conditions.</label>
</form>
cy.get('form input').check(['subscribe', 'accept'])
Параметры
Установить невидимый флажок
Вы можете игнорировать стандартное поведение Cypress, проверяющее, что элемент видимый, нажимаемый и не отключен, установив force на true в параметрах.
cy.get('.action-checkboxes')
.should('not.be.visible') // Passes
.check({ force: true })
.should('be.checked') // Passes
Найти выбранный пункт
Вы можете получить текущий выбранный пункт, используя селектор jQuery
селектор.<form id="pick-fruit">
<input type="radio" name="fruit" value="orange" id="orange" />
<input type="radio" name="fruit" value="apple" id="apple" checked="checked" />
<input type="radio" name="fruit" value="banana" id="banana" />
</form>
cy.get('#pick-fruit :checked').should('be.checked').and('have.value', 'apple')
Примечания
Действительность
Элемент должен сначала достичь состояния действия
.check() — это «команда действия», которая следует всем правилам действительности.
Правила
Требования
-
.check()требует цепочки команд, возвращающих DOM-элемент(ы). -
.check()требует, чтобы элемент имел типcheckboxилиradio.
Утверждения
-
.check()автоматически подождёт, пока элемент достигнет состояния действия -
.check()автоматически повторяется, пока все утверждения не пройдут
Таймауты
-
.check()может выйти за пределы таймаута, ожидая, пока элемент достигнет состояния действия . -
.check()может выйти за пределы таймаута, ожидая, пока утверждения пройдут.
Журнал команд
Проверить элемент с именем 'emailUser'
cy.get('form').find('[name="emailUser"]').check()
Вышеуказанные команды отобразятся в журнале команд как:
При нажатии на check в журнале команд, консоль выводит следующее:
См. также
© 2017 Cypress.io
Licensed under the MIT License.
https://docs.cypress.io/api/commands/check