说我必须验证复选框的状态
element(by.css('input')).getAttribute("checked").then(function(isChecked:string) {
expect(isChecked).toEqual(pExpected.toString());
}),
在我的测试中,我确认默认情况下已选中该复选框。这里一切都很好。然后我取消选中复选框
element(by.css('input')).click();
并调用该函数以验证该复选框未选中。这次,变量isChecked
为空。我也试过了
var cb = element(by.css('input'));
cb .click().then(function(){
cb .getAttribute("checked").then(function(isChecked:string){
expect(isChecked).toEqual("false");
})
});
没有任何改变。我无法理解这里发生了什么。在此先感谢您的帮助。
答案 0 :(得分:0)
使用类似的东西 -
expect(element(by.css('input')).isSelected()).toBeFalsy()
答案 1 :(得分:0)
您可以这样做,使用isEnabled而不是getAttribute和toBeFalsy而不是toEqual来验证复选框的状态。
var cb = element(by.css('input'));
cb .click().then(function(){
cb .isEnabled().then(function(Checked){
expect(Checked).toBeFalsy();
})
});