javascript - 如何在 Protractor 中选中多个复选框

标签 javascript angularjs checkbox protractor

我已经看到如何通过此链接选中一个复选框: How to validate when a checkbox is checked in AngularJS e2e tests?

但是我想知道如何执行此操作以检查我 View 中的所有复选框是否都将被选中。

目前下面的代码只检查一个复选框是否被选中:

    .clickElementById('user-' + data.userIndex)
    .expect(
        element('input[ng-model="user.checked"]')
        .attr('checked')
    ).toBeTruthy()

这正是我想要的,但是当我进行下一次通过按钮选择所有复选框的测试时,我想遍历所有复选框以测试它们是否已被选中。抱歉重复一遍。

最佳答案

使用 element.all 创建指定元素的数组,然后您可以循环或直接调用它们,即

element.all(by.model('user.checked').then(function(btn) {
    expect(btn[0].attr('checked')).toBe('true');
});

或者用循环

element.all(by.model('user.checked').each(function(btn) {
     // iterates through each btn
     expect(btn.attr('checked')).toBe('true');
});

来源:https://angular.github.io/protractor/#/api?view=ElementArrayFinder

关于javascript - 如何在 Protractor 中选中多个复选框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36738017/

相关文章:

javascript - 如何给 asp 按钮一个特定的快捷方式

Python 使用按钮通过 tkinter GUI 循环字典项

javascript - 是否可以隐藏或操纵 jqGrid "sort"图标?

javascript - 删除类事件 onclick (angularjs)

AngularJS:货币格式。更改分数大小、千位分隔符和分数分隔符

javascript - 如何在 Angular 表达式中获取一种范围变量?

javascript - 如何使用Javascript更改另一个元素onclick的Bgcolor?

javascript - 重新加载后保存复选框状态(TODO 列表)

javascript - 将 url 中的 json 数据存储到 cordova 的数据库中

javascript - URL.createObjectURL(blob) : How do I give a "meaningful filename" to a dynamically generated . pdf?