为什么赛普拉斯不选中复选框?

时间:2021-04-15 20:22:59

标签: angularjs checkbox cypress

在我的 cypress runner 中,我可以看到它成功找到了复选框,因为我可以看到它具有 type="checkbox" 属性。我还注意到,通过手动单击复选框,其“值”属性变为“真”,因此我尝试使用 invoke('attr', 'value', 'true') 也“成功”但文本框保持未选中状态。不知道我错过了什么。我可以看到没有 onClick 事件可以在检查后立即取消选中。

我的代码:

enter image description here

它返回的内容:

return checkbox element

1 个答案:

答案 0 :(得分:0)

我会添加一个断言来检查 checkbox 元素是否也没有 disabled 属性。如果元素具有 disabled 属性,则测试将通过。

cy.contains('div', 'Auto Next Alert')
    .find('input[type="checkbox"]')
    .should('not.have.attr', 'disabled');
    
cy.get('input[type="checkbox"]')
    .check()
    .should('be.checked');