我一直在尝试AngularJS e2e 测试,但在确定是否选中复选框时遇到了困难。
我将复选框输入的端到端测试用作示例(请参阅示例中的端到端测试选项卡)。
html片段:
Value1: <input type="checkbox" ng-model="value1"> <br/>
控制器片段:
function Ctrl($scope) {
$scope.value1 = true;
}
这是我尝试过的:
1)expect(binding('value1')).toEqual('true');
只要value1
在屏幕上显示,这在示例端到端测试中有效{{value1}}
。如果您在本地对此进行测试并删除 `{{value1}},则绑定测试将失败。在我的大多数真实示例中,我没有在屏幕上的任何地方显示复选框值。
2)expect(input('value1').val()).toEqual('true');
该值将始终默认为on
并且与复选框是否处于选中状态无关(取自这篇文章)。
注意:看起来 Angular E2E 测试将来会被Protractor取代(请参阅文档)