저는 자스민 단위 테스트를 가지고 있습니다.이 테스트는 각도 서비스로 작성된 일부 핵심 구성 요소를 실행하는 '통합 테스트'입니다. 하지만 내 구성 요소는 웹에 전화하지 않습니다. 문제를 보여주기 위해 내 두 시험 나는이 때문에 $ httpBackend 조롱의 알고
it('test http get', function() {
httpGet('http://endpoint.json');
function httpGet(theUrl) {
var xmlHttp = null;
xmlHttp = new XMLHttpRequest();
xmlHttp.open("GET", theUrl, false);
xmlHttp.send(null);
return xmlHttp.responseText;
}
})
it('test angular http get', inject(function($http) {
$http.get('http://endpoint.json').
success(function (data, status, headers, config) {
console.log('success');
}).
error(function (data, status, headers, config) {
console.log('failure');
});
}));
는 [그 CORS를 비활성화 방식에 의해 나는 플러그가] ... 이런 식이다. 그러나 나는 실제 구현을 사용할 필요가있다. jasmine의 비동기식 기능을 사용하여 응답 또는 시간 초과를 기다리고 싶지만 각도를 실제로 만드는 방법을 알아낼 수 없습니다.
다른 새로운 jQuery 호출이 정상적으로 작동합니다. :-)
안녕 감사하지만 나는 그들이 느리고 유지하기 어려운 E2E 테스트를 싫어. 내 견해가 바뀌면 테스트를 변경해야합니다. 경험상 오히려 직각 응용 프로그램을 만들고 경계에서 테스트 할 것입니다. 그런 다음 1/2 e2e 테스트를 최대로 사용하여 모든 것이 올바르게 전개되었는지 점검하십시오. 어쨌든 나는 물러 ,다. 그러나 이것 때문에 나는 각도기를 사용하여 시야 검사에서 잘 벗어나려고 노력하고있다. 그러나 그것은 각도 호출이 실제로 발생하는지 확인하기 위해 $ timeout 또는 $ interval을 사용하여 나를 밝혀주십시오. 어떻게 작동할까요? – Exitos
실제로 전화가 걸리지는 않습니다. 테스트에 합성 시간이 추가되지만 완벽한 해결책은 아닙니다. 당신은 단순히 $ http 서비스의 정직성을 테스트하려고합니까? 작동하는지 확인하고 싶습니까? (BTW, 각도기 정말 정말 빠릅니다). – Linial
아니요 객체가 reservationCreator라는 각도 서비스 콜렉션이며 3 개의 웹 서비스를 히트하고 매핑 논리를로드합니다. 그 모듈을 고립 시켜서 통합 테스트하고 싶습니다. 브라우저를 통해 몰지 마세요. 사람들은 브라우저 테스트를 좋아하고 저에게 모자를 씁니다. 왜냐하면 나에게 직접 http 호출과 같이 빠르고 깨끗하고 읽기 쉬운 곳은 어디에도 없습니다. 버튼이 작동하는지 여부가 아니라 도메인 로직과 데이터를 테스트하면됩니다. 다행히도 제 모듈은 매우 분리되어 있습니다. 저는이 작업을하기 위해 jQuery를 이음새에 삽입 할 수있을 것 같아요. 답변을 주신 덕분에 – Exitos