Cypress 获取复选框的选中值-材质设计
我有一个页面,使用一个基本的基于引导的管理BSB材料设计 我很难从这个设计中的复选框中得到一个值 “选中”的复选框示例: 即使我添加了Cypress 获取复选框的选中值-材质设计,cypress,Cypress,我有一个页面,使用一个基本的基于引导的管理BSB材料设计 我很难从这个设计中的复选框中得到一个值 “选中”的复选框示例: 即使我添加了datacypress=“mycheckbx”属性,我也发现cypress没有找到checkbox控件 所以我的问题是:在这个场景中,我如何获得“checked”属性 使用的样式: [type="checkbox"].filled-in:not(:checked)+label:before { width: 0; height: 0;
datacypress=“mycheckbx”
属性,我也发现cypress没有找到checkbox控件
所以我的问题是:在这个场景中,我如何获得“checked”属性
使用的样式:
[type="checkbox"].filled-in:not(:checked)+label:before {
width: 0;
height: 0;
border: 3px solid transparent;
left: 6px;
top: 10px;
-webkit-transform: rotateZ(37deg);
transform: rotateZ(37deg);
-webkit-transform-origin: 20% 40%;
transform-origin: 100% 100%
}
[type="checkbox"].filled-in:not(:checked)+label:after {
height: 20px;
width: 20px;
background-color: transparent;
border: 2px solid #5a5a5a;
top: 0;
z-index: 0
}
[type="checkbox"].filled-in:checked+label:before {
top: 0;
left: 1px;
width: 8px;
height: 13px;
border-top: 2px solid transparent;
border-left: 2px solid transparent;
border-right: 2px solid #fff;
border-bottom: 2px solid #fff;
-webkit-transform: rotateZ(37deg);
transform: rotateZ(37deg);
-webkit-transform-origin: 100% 100%;
transform-origin: 100% 100%
}
[type="checkbox"].filled-in:checked+label:after {
top: 0;
width: 20px;
height: 20px;
border: 2px solid #26a69a;
background-color: #26a69a;
z-index: 0
}
看来我所需要做的就是:
cy.get('#pract-haspen').should('have.attr', 'checked')
这一断言奏效了
谢谢如果
attr
不适合您,请尝试prop
:
cy.get('#pract-haspen').should('have.prop', 'checked')
由于上述解决方案对我都不起作用,我这样做了:
cy.get('#element').should('be.checked'))
来源:这是一个带有断言测试的问题 如果您想获得该值并在某处使用它,您可以简单地:
cy.get('#elementQuery').then(elem => {
var value = elem.val()
...do anything you want, like if(value == 'on')...
})
请您提供您尝试过的Cypress代码,并解释您希望它做什么。我这样问是因为断言一个框是否被选中与实际将“选中”状态存储在一个变量(true或false)中的方式不同,您可以在Cypress规范中使用后者。