使用量角器查找已选中复选框的计数

时间:2016-06-29 04:22:22

标签: protractor

我想在我的AngularJS应用程序中进行量角器测试,我需要找到已选中复选框的计数。页面中大约有44个复选框,其中只有4个被选中。我在下面写了控制台打印的代码 真的,假的,假的,真的,假的,假的,真的,假的,假的,真实的;等

如何找到有多少真值?

var rows = element.all(by.model("accordoptionGroup[optgroup.id][objopt.id].value"));    
rows.isSelected().then(function(isSelect){
console.log(isSelect);  
}); 

2 个答案:

答案 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并且你可以得到计数!