我在用着Jasmine http://jasmine.github.io/对我的 Angular 应用程序进行单元测试。如何在我的控制器中测试表单验证?例如我有一个登录功能:
$scope.login = function() {
if($scope.form_login.$valid) {
//send request with username and password
};
};
我正在尝试设置$valid
to true
,但我无法访问此处的表单。我收到一个错误TypeError: Cannot set property '$valid' of undefined
:
it('should not send request if form validation fails', function() {
$controller('loginController', {$scope: $scope});
$scope.form_login.$valid = true;
$scope.login();
})
单元测试不应该真正测试表单。要测试表单和其他与控制器无关的内容,请使用 e2e 测试。
但是,如果您确实想在单元测试中测试验证,请参阅测试自定义验证 angularjs 指令 https://stackoverflow.com/questions/15219717/to-test-a-custom-validation-angular-directive or 如何对 angularjs 表单进行单元测试? https://stackoverflow.com/questions/25022663/how-to-unit-test-angular-form
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)