我的测试看起来像,
it("init the service", function(){
console.log(baseHttp);
baseHttp.getFire().then(function(response){
console.log(1);
expect(true).toBe(false);
}, function(response){});
});
这个测试通过了,控制台只显示了baseHttp是什么,但是没有显示1.这意味着那个部分没有运行。
我的服务就像,
testApp.service("baseHttp", function($http, $q){
this.getFire = function(){
console.log(2);
var deferred = $q.defer();
console.log(3);
$http({
method: 'GET',
url: "http://www.google.com"
}).then(function(response){
console.log(4);
deferred.resolve(response);
},function(response){
deferred.reject(resposne);
});
return deferred.promise;
};
})
当它是业力时,输出2和3。 4不是。但是,当我在网络应用程序(网页)中运行它时,它确实有效。只有它不能成为业力。