2017-05-11 4 views
0

각도기 테스트 사양의 범위에 대한 angular2 서비스의 대체 구현을 효과적으로 제공하고 싶습니다. 나는 서비스를 테스트하려고하지 않으므로 MockBackend는 가치가 거의 없다.각도기 테스트에서 모의 ​​각도 2 서비스

사양을 실행하기 전에 인젝터에 액세스하거나 공급자를 등록 할 수 있습니까? 이 유형의 것

{provide: MyService, useClass: MyMockedService} 

그리고 단지 MyMockedService에 하드 코딩 된 값을 반환하는 동일한 메소드가 있습니까?

단위 테스트에서이를 수행하는 방법을 알고 있습니다. 이것은 특히 분도기 e2e 테스트입니다. 그리고 다시, 나는 서비스를 시험하려고하지 않고있다. .. 나는 MockBackend가 여기에서 도움이된다고 생각하지 않는다.

답변

0

들어 본 적이 있습니까?/ng-Apimock을 들으셨습니까? Angular 2+ 응용 프로그램을 작성하고 잘 작동하는 고객에게이 도구를 사용합니다. 이것은 지역 개발 (각 서비스마다 다른 시나리오를 선택할 수있는 간단한 UI가 있음)에 사용되며 각도기 테스트 중에 사용됩니다. 응답을 쉽게 작성하고 즉시 정의 된 전역을 사용할 수 있습니다.

다른 구성 (각도 cli, 각도 종자, 꿀꿀 거리는 소리, 꿀꺽 마심, ..)과 함께 사용할 수 있습니다.

희망이 있습니다.

0

각도기 테스트에 다른 환경을 사용하고 서비스가 등록 된 모듈에서 검사를 추가 할 수 있습니다. 추상적 인 수퍼 클래스를 사용하면 DI를 Angular로 사용하여 환경에 따라 다른 값을 주입 할 수 있습니다. 비슷한 :

environment.e2eMode ? {provide: AbstractService, useClass: ServiceMock} : {provide: AbstractService, useClass: ServiceImpl}, 

하지만 MockService가 프로덕션 코드로 끝나지 않도록주의해야합니다.

관련 문제