我想在我的AngularJS应用程序中进行量角器测试,我需要找到已选中复选框的计数。页面中大约有44个复选框,其中只有4个被选中。我在下面写了控制台打印的代码 真的,假的,假的,真的,假的,假的,真的,假的,假的,真实的;等
如何找到有多少真值?
var rows = element.all(by.model("accordoptionGroup[optgroup.id][objopt.id].value"));
rows.isSelected().then(function(isSelect){
console.log(isSelect);
});
答案 0 :(得分:3)
更好的方式 - 使用filter()
:
var rows = element.all(by.model("accordoptionGroup[optgroup.id][objopt.id].value"));
var count = rows.filter(function (row) {
return row.isSelected().then(function (isSelected) {
return isSelected;
});
}).count();
expect(count).toEqual(4);
答案 1 :(得分:0)
你可以这样做 -
var rows = element.all(by.model("accordoptionGroup[optgroup.id][objopt.id].value"));
rows.isSelected().then(function(selected){
count =0;
for(i=0;i<rows.length<i++) {
if(selected) {
count++;
}
}
expect(count).toEqual(4); // to check 4 checkboxes are checked
});
然后你可以尝试给出一个for循环并迭代它,如果选中它返回true并且你可以得到计数!