我有一個plunkr,並試圖找出如何測試EventEmitter後嘗試遵循網絡上的一些建議沒有成功。我想知道如何通過觸發點擊按鈕來測試它......所以更多的組件測試。該代碼在voter.component.ts和voter.componet.spec.ts文件中。任何幫助,這將不勝感激。Angular2和測試EventEmitter
it('should emit on up/down vote click', fakeAsync((): void => {
let fixture: ComponentFixture = TestBed.createComponent(VoterComponent);
let instance: VoterComponent = fixture.componentInstance;
spyOn(instance.onVote, 'emit');
let button = findElement(fixture, 'button:first-child');
button.click();
fixture.detectChanges();
tick();
expect(instance.onVote.emit).toHaveBeenCalled(1);
}));
這有什麼不行?它看起來很好。 –
謝謝你的採訪。當我運行測試時,出現錯誤「預期的間諜發射已被調用」...因此我不確定按鈕點擊是不正確的還是什麼。任何幫助,這將不勝感激。 – CraigM