如何使用赛普拉斯清除(取消选择)多选输入中的所有选项?
此处的文档似乎并未涵盖这种情况:https://docs.cypress.io/api/commands/select.html#Syntax
显然,clear()
命令无法应用于选择项
https://docs.cypress.io/api/commands/clear.html#Syntax
我尝试将空字符串/数组/ null传递给select()
,但出现以下错误:
CypressError: Timed out retrying: cy.select() failed because it could not find a single <option> with value or text matching: ''
答案 0 :(得分:0)
您可以使用cy.invoke()
在基础JQuery元素上调用.val('')
方法,这将导致该元素被清除。
赞:
cy.get('select')
.invoke('val', '')
请注意,这不会发出change
事件。如果要测试代码对change
事件有反应,可以使其与cy.trigger()
一起发出:
cy.get('select')
.invoke('val', '')
.trigger('change')
我也filed a feature request for this functionality,因为看起来好像默认情况下赛普拉斯应该包含这些东西。