AngularJS茉莉花测试获取请求

我有一个工厂来执行一个获取请求,我想测试.不幸的是业界测试告诉我,$httpBackend没有定义回应.

AngularJs 1.2.14,
茉莉2.0,
羯磨0.12.0

这是我要测试的模块:

var appFactory = angular.module('appFactory',[]);

appFactory.factory('BoxListService',function($http){
    return{
        getList: function(){
            return $http.get('/Boxlist').then(function(result){
                return result.data;
            });
        }
    };
});

我的测试是这样的:

describe('Module-Test',function() {

    beforeEach(module('appFactory'));

     it('should call $http.get in getList',inject(function (BoxListService,$httpBackend){
        $httpBackend.expectGET('/Boxlist');
        BoxListService.getList();
        $httpBackend.flush();
      }));
});

信息:

Error: No response defined !
at $httpBackend (D:/nodeJS/host/test_app/src/public/js/libs/angular/angular-mock.js:1206:13)
您必须定义预期响应以及预期请求.它将具有以下形式:
$httpBackend.expectGET('/Boxlist').respond(HTTP_STATUS_CODE,EXPECTED_RESPONSE);

HTTP_STATUS_CODE是一个整数.
EXPECTED_RESPONSE是要返回的值(它通常是一个Object Literal).

您只能定义其中之一.

查看ngMock httpBackend文档了解更多信息.

相关文章

AngularJS 是一个JavaScript 框架。它可通过 注:建议把脚本放在 元素的底部。这会提高网页加载速度,因...
angluarjs中页面初始化的时候会出现语法{{}}在页面中问题,也即是页面闪烁问题。出现这个的原因是:由于...
AngularJS 通过被称为指令的新属性来扩展 HTML。AngularJS 指令AngularJS 指令是扩展的 HTML 属性,带有...
AngularJS 使用表达式把数据绑定到 HTML。AngularJS 表达式AngularJS 表达式写在双大括号内:{{ expres...
ng-repeat 指令可以完美的显示表格。在表格中显示数据 {{ x.Name }} {{ x.Country }} 使用 CSS 样式为了...
$http是 AngularJS 中的一个核心服务,用于读取远程服务器的数据。读取 JSON 文件下是存储在web服务器上...