0
이것은 내 애플리케이션의 탐색을 처리하는 간단한 서비스입니다. 사용자가 현재 상태대로 "다음"을 클릭하면 다음 페이지로 리디렉션됩니다. 내가 실패 테스트하려고 할 때angularjs 서비스에서 함수를 테스트하는 방법
'use strict';
describe('ButtonBarService', function() {
beforeEach(module('myAngularmodule'));
var ButtonBarService;
beforeEach(inject(function (_ButtonBarService_) {
ButtonBarService = _ButtonBarService_;
spyOn(ButtonBarService, 'next');
}));
describe('next()', function() {
it('should retrieve the current user', function() {
expect(ButtonBarService.next).toHaveBeenCalled();
});
});
});
'use strict';
angular
.module('myAngularmodule')
.service('ButtonBarService',
function ($state, StatesConstants) {
return {
next: next
};
function next() {
switch ($state.current.name) {
case StatesConstants.LICENSE :
$state.go(StatesConstants.APPLICATIONGROUP);
break;
case StatesConstants.APPLICATIONGROUP :
$state.go(StatesConstants.ANALYSIS);
break;
default:
break;
}
}
});
이
내 사양 파일, 그것은 "다음 예상 스파이가 호출 된 것으로."라고 말하는 실패 이 서비스에는 백엔드가 없으므로 버튼바를 처리하기 위해 일반화했습니다. 저는 프론트 엔드에 새로운 경험이 있습니다. 나는 $ http를 가지고 있지만 이해할 수없는 해답을 보았다.
내부 기능이 무엇인지 확인해야합니다. 각각 앞에 ButtonBarService.next()를 추가하고 예상을 확인해야합니다. –
자세히 대답 할 수 있습니까? 이미 그것을 감시하고 있습니다. 다른 일을해야합니까 ?? – ankitd
당신이 말하고 싶은 잘못된 것들을 테스트하고있다. 어떤 상태에서 ... $ state.go (StatesConstants.APPLICATIONGROUP);가 다른 서비스 나 컨트롤러의 일부 여야하는지에 대한 테스트가 필요하다. –