데이터를 반환하는 REST URL을 호출하는 서비스가 있습니다.
내 샘플 코드는
$http('POST', '/mockUrl/resource/'+resourceValue).then(...);
내 서비스가 잘 작동하고 데이터를 반환 할 것이다. 제 문제는 업장에서 이것을 어떻게 테스트해야합니까? 지금 당장 나는 다른 resourceValue를 호출하여 mockUrl이 호출되는지 테스트합니다. stackoverflow에 오기 전에 각 테스트에서 예상 URL을 사용하여 $ httpBackend를 정의했습니다.
예 :
it('testing for status 200', function(){
$httpBackend.when('POST', '/mockUrl/resource/'+1234)
.respond(function (method, url, data, headers) {
return [200, data1];
});
MyService.serviceMethod(1234).then(function(){
//test the returned data
});
});
it('testing for status 201', function(){
$httpBackend.when('POST', '/mockUrl/resource/'+4567)
.respond(function (method, url, data, headers) {
return [201, data2];
});
MyService.serviceMethod(1234).then(function(){
//test the returned data
});
});
내가 위의 방식으로 내 카르마 테스트를 작성되어서는 안된다는 이야기하고 있어요. 그러나 나는 그것을 피하는 방법을 모르겠습니다.
나는
$httpBackend.when('POST',url)
.respond(function (method, url, data, headers) {
return data[option];
});
을 시도하지만이 'URL'은 결코 어떤 시험에 호출되지됩니다. 나는 더 진행하는 방법을 모르겠습니다.
들여 쓰기 코드 – Hitmands
붙여 넣기를 고려하십시오. – manu