【发布时间】:2020-07-29 15:48:59
【问题描述】:
我正在尝试添加一个测试来测试以下代码部分,但我不确定如何,因为输出表明行 60-109 未被发现。它看起来像这样:
public async ngOnInit() {
const data = await this.requestAppService.getData()
this.tableModel = { // Line 60
...this.tableModel,
rows: data.map(
/*
* Map data
*/
)
}
this.subscriptions.push(
/* Add a subscription */
)
// Line 109
}
我正在使用的测试如下所示:
it('...', fakeAsync(() => {
const spy = spyOn(component, 'ngOnInit').and.callThrough()
component.ngOnInit()
tick()
expect(spy).toHaveBeenCalled()
}))
这只是我认为我应该如何测试它的猜测,但它似乎并没有涵盖这些线条。
我也试过callFake,也不管用。
it('...', fakeAsync(() => {
const spy = spyOn(component, 'ngOnInit').and.callFake(() => Promise.resolve())
component.ngOnInit()
tick()
expect(spy).toHaveBeenCalled()
}))
【问题讨论】:
标签: javascript angular jasmine karma-jasmine