AngularJS 测试服务结果 'UnknownProvider'

AngularJS testing service results in 'UnknownProvider'

我知道那里有很多类似的问题,我已经解决了很多,但是 none 似乎解决了我的问题。

我正在尝试测试服务,但我一直收到 Unknown Provider 错误,我就是想不通。

代码如下所示:

TestService.js

'use strict';
angular.module('app')
    .service('TestService', function() {

        var testFunction = function() {
            console.log('testFunction');
        };

        return {
            testFunction: testFunction
        };
    });

test.service.tests.js

'use strict';
describe('TestService', function() {

    beforeEach(module('app'));

    var TestService;

    beforeEach(inject(function(_TestService_) {
        TestService = _TestService_;
    }));

    describe('testFunction', function() {
        it('Should call the test function', function() {
            expect(TestService.testFunction).toHaveBeenCalled();
        });
    });
});

即使我注释掉 expect(testService.testFunction).toHaveBeenCalled(); 我仍然得到:

Error: [$injector:unpr] Unknown provider: TestServiceProvider <- TestService

我想不通。我不知道这段代码是否有问题,或者我是否没有正确设置测试。

无论如何,我们将不胜感激。

问题在于必需的依赖项。确保依赖项的定义和拼写正确

参考下面link:

docs.angularjs.org/error/$injector/unpr