Как очистить множественный выбор с помощью Cypress? - PullRequest
0 голосов
/ 28 мая 2019

Как очистить (отменить выбор) все параметры в мульти-выбранном входе с помощью Cypress?

Документация здесь не охватывает этот сценарий: https://docs.cypress.io/api/commands/select.html#Syntax

Команда clear(), очевидно, не может быть применена к выборам, как вы могли ожидать https://docs.cypress.io/api/commands/clear.html#Syntax

Я попытался передать пустую строку / массив / ноль select(), но я получаю следующую ошибку:

CypressError: Timed out retrying: cy.select() failed because it could not find a single <option> with value or text matching: ''

1 Ответ

0 голосов
/ 28 мая 2019

Вы можете использовать cy.invoke() для вызова метода .val('') для базового элемента JQuery, который приведет к его очистке.

Как это:

cy.get('select')
.invoke('val', '')

Обратите внимание, что это не будет генерировать событие change. Если вы хотите проверить, реагирует ли ваш код на событие change, вы можете запустить его с помощью cy.trigger():

cy.get('select')
.invoke('val', '')
.trigger('change')

Я также подал запрос на добавление функции для этой функции , так как это похоже на то, что должно быть включено в Cypress по умолчанию.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...