Spec-Zone.ru › Cypress

проверка

Установите флажок(и) или радиокнопку(и).

Этот элемент должен быть <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()

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

Command log for check

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

console.log for check

См. также

  • .click()
  • .uncheck()

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

Spec-Zone.ru

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