相关疑难解决方法(0)

如何测试Angular模块的配置功能?

我在configAngular 的函数中定义了一些module我想要进行单元测试的设置代码.我不清楚我应该怎么做.下面是一个简化的测试用例,展示了我是如何陷入困境的:

'use strict';

angular.module('myModule', []).config(['$http', '$log', function($http, $log) {
    $http.get('/api/getkey').then(function success(response) {
        $log.log(response.data);
    });
}]);

describe('myModule', function() {
    it('logs a key obtained from XHR', inject(function($httpBackend) {
        $httpBackend.expectGET('/api/getkey').respond(200, '12345');
        angular.module('myModule');
        $httpBackend.flush();
    }));
});
Run Code Online (Sandbox Code Playgroud)

这显然不是正确的方法,因为我收到以下错误:

Error: No pending request to flush !
Run Code Online (Sandbox Code Playgroud)

与上面的测试代码完整的,现成的运行角度的项目可以发现在GitHub上.如果您知道如何处理此场景,请在此处回答Stack Overflow.如果您还向GitHub仓库提交拉取请求,则可获得奖励积分.

javascript angularjs karma-runner karma-jasmine angular-mock

8
推荐指数
2
解决办法
1565
查看次数