I want to test a component that uses the async pipe. This is my code: @Component({ selector: 'test', template: ` <div>{{ number | async }}</div> ` }) class AsyncComponent { number = Observable.interval(1000).take(3) } fdescribe('Async Compnent', () => { let component : AsyncComponent; let fixture : ComponentFixture<AsyncComponent>; beforeEach( async(() => { TestBed.configureTestingModule({ declarations: [ AsyncComponent ] }).compileComponents(); }) ); beforeEach(() => { fixture = TestBed.createComponent(AsyncComponent); component = fixture.componentInstance; fixture.detectChanges(); }); it('should emit values', fakeAsync(() => { tick(1000); fixture.detectChanges(); expect(fixture.debugElement.query(By.css('div')).nativeElement.innerHTML).toBe('0'); }); But the test failed. It's seems Angular does not execute to Observable from some reason. What I am missing? When I'm trying to log the observable with the do operator, I don't see any output in the browser console. Continue reading...