【发布时间】:2018-10-30 13:52:19
【问题描述】:
我想测试获取请求相关的功能。 应触发请求并将值映射到相关对象。 相关代码为:
it('Should have values set', () => {
const service: FetcherService = TestBed.get(FetcherService);
const technologyString = 'technology';
service.fetchNews(technologyString);
expect(service.fetchNewsResponse.category === technologyString);
});
但目前它可能不相关,因为相关测试因 Karma 而失败并且消息是
TypeError: Cannot read property 'category' of undefined
我应该更改哪些代码来解决此问题?
编辑:
service.fetchNews相关的代码是:
public fetchNews(category: string) {
this.httpClient.get<News>('http://localhost:8080/news/' + this.country + '/' + category + '/')
.subscribe(data => this.fetchNewsResponse = data );
}
【问题讨论】:
-
你能发布
FetcherService代码吗?也许fetchNews是异步的并且断言是在设置fetchNewsResponse之前完成的? -
@JuniorDussouillez 我添加了一个编辑