无法读取未定义的属性“ returnValue”

时间:2019-05-17 20:37:52

标签: angular unit-testing

我正在基于官方Angular docs

编写我的第一个单元测试

但是,当尝试使用他们的示例时,我在尝试测试时遇到了上述错误。我正在四处张望,但找不到关于此特定错误的任何信息。

我的尝试

IEnumerable<IGrouping>

我认为我的服务返回可观察值是一个问题吗?我以为那是很标准的。我的服务没有什么特别的。

1 个答案:

答案 0 :(得分:0)

您非常亲密。要测试服务,您需要将该服务添加到providers数组。所以改变这个:

TestBed.configureTestingModule({
  // this fixed an issue which is why i added it
  providers: [{ provide: HttpClient, useValue: spy }]
});

像这样:

TestBed.configureTestingModule({
  providers: [
    VService,
    { provide: HttpClient, useValue: spy }
  ]
});

注意:您可以在设置HttpClient时对其进行监视,但也可以查看documented here很好的HttpClientTestingModule