【发布时间】:2013-11-08 12:41:00
【问题描述】:
我一直在尝试通过注入模拟依赖项使用 Mocha 对一些 Angular js 服务进行单元测试。我已经阅读了很多关于此的内容,并且有人建议使用 angular-mocks 的主分支应该可以与 mocha 一起使用。但是,当我尝试这个时,我得到以下 javascript 错误,并且未定义“注入”和“模块”函数:
ReferenceError: beforeEach is not defined
我也尝试过使用 angular.injector,这使我取得了一些成功,但是,我无法模拟我的服务所依赖的服务(在本例中为 $http)。我的服务:
var app = angular.module('app', ['ui.bootstrap'], function($provide){
$provide.factory('myService', ['$http', function($http){
return {
doSomething: function(batch){
...
}
};
}]);
});
解决:
$injector = angular.injector(['ng', 'app']);
var subject = $injector.get('myService');
不使用茉莉花可以吗?
【问题讨论】:
标签: javascript angularjs mocha.js