【发布时间】:2017-10-25 10:56:09
【问题描述】:
假设我有一个使用 HttpClient 的服务,
@Injectable()
export class MyService {
constructor(protected httpClient: HttpClient) { .. }
}
然后是使用此服务的组件。
@Component({
selector: 'my-component'
})
export class SendSmsComponent {
constructor(private MyService) { .. }
}
如何在模拟 HttpClient 而不是整个服务时测试这个组件?
TestBed.configureTestingModule({
declarations: [MyComponent],
providers: [
{ provide: MyService, useClass: MyService } // ?
]
}).compileComponents();
httpMock = TestBed.get(HttpTestingController); // ?
【问题讨论】:
-
考虑到这是单元测试,正确的做法是模拟整个服务。
标签: angular unit-testing