测试 Angular 8 ngOnInit 的订阅
Testing subscriptions for Angular 8 ngOnInit
我正在尝试学习 angular 使用 Karma 和 Jasmine 进行单元测试。
我的问题是,当我尝试测试组件是否已创建时,我得到:'TypeError: Cannot read 属性 'subscribe' of undefined'
因为我在 ngOnInit() 中有订阅而且我不知道如何在方法中测试订阅。
感谢您的帮助:)
在 init 的生命周期中订阅的所有可观察对象都是组件的输入,因此您必须在测试中设置此值。
it('should create', () => {
// Here you have to set every input used on your ngOnInit()
component.cast = new Observable((observer) => { observer.next(true); });
component.cast2 = new Observable((observer) => { observer.next(true); });
component.cast3 = new Observable((observer) => { observer.next('test'); });
expect(component).toBeTruthy();
});
我正在尝试学习 angular 使用 Karma 和 Jasmine 进行单元测试。
我的问题是,当我尝试测试组件是否已创建时,我得到:'TypeError: Cannot read 属性 'subscribe' of undefined' 因为我在 ngOnInit() 中有订阅而且我不知道如何在方法中测试订阅。
感谢您的帮助:)
在 init 的生命周期中订阅的所有可观察对象都是组件的输入,因此您必须在测试中设置此值。
it('should create', () => {
// Here you have to set every input used on your ngOnInit()
component.cast = new Observable((observer) => { observer.next(true); });
component.cast2 = new Observable((observer) => { observer.next(true); });
component.cast3 = new Observable((observer) => { observer.next('test'); });
expect(component).toBeTruthy();
});