角度JS单元测试(Karma Jasmine)

时间:2015-10-13 15:23:46

标签: angularjs unit-testing karma-jasmine

我有这样的服务:

.service('sampleSvc', function($http, $q, $window, modalSvc){ ...

在进行单元测试时,是否必须将$http $q $window modalSvc作为依赖项注入?当我像这样注入Unknown Provider: modalSvcprovider<--modalSvc<--sampleSvc ..时,我总是收到错误 我错过了什么吗?我已经在karma.conf.js

中提供了源文件和规范文件的路径

这就是我注入依赖项的方式

beforeEach(inject(function( $http, $q, $window, modalSvc){

1 个答案:

答案 0 :(得分:0)

你必须做这样的事情:

var $http, $q, $window, modalSvc;

beforeEach(inject(function(_$http_, _$q_, _$window_, _modalSvc_) {
  $http = _$http_;
  $q = _$q_;
  $window = _$window_;
  modalSvc = _modalSvc_;
});

如果不在beforeEach之外声明变量,它们将无法在函数外部使用。