在业力中仅使用http请求测试函数?

时间:2015-11-03 09:32:30

标签: angularjs unit-testing service karma-jasmine

我必须测试一个AngularJS应用程序,我正在尝试对服务进行单元测试。这些服务的功能如下:

      getData: function(){
      return $http.get(serviceRoot+'/getData/'+anotherService.id()).then(function(response) {
              return secondService.validateServerJson(response.data.key);
      }, function(error) {
        return false;
      })
    },

是否有必要为此编写测试,因为我在模拟http请求?

1 个答案:

答案 0 :(得分:0)

您可以执行以下操作

$httpBackend.expectGET(serviceRoot+'/getData/'+anotherService.id(), function(){}).respond(200,{/*response object*/});
yourserviceinstance.getData();
$httpBackend.flush();

这是链接 Unit testing AngularJS controller with $httpBackend

希望这可以帮到你