0

我正在创建一个通过 HTTP 加载和发送数据的服务,并且我创建了一些需要使用真实 HttpClient(未模拟)的测试。

所以,它是这样的:

describe("My3rdPartyConnectedServiceTests", () => {
  beforeEach(() => {
    TestBed.configureTestingModule({
      imports: [HttpClient],
      providers: [My3rdPartyConnectedService]
    });
  });

  beforeEach(async(() => {
    const http = TestBed.get(HttpClient);

    http.delete("http://localhost:22213/api/somemethod").subscribe(() => {
…
    });
  }));

和测试代码去。但是当我运行测试时,我得到:

模块“DynamicTestModule”导入的意外值“HttpClient”。请添加 @NgModule 注释。

那么如何在我的测试中发送请求呢?

PS。现在,如果你认为我根本不应该在测试中这样做,那你就错了。这些测试和服务实际上做了一些涉及第三方 REST API 的工作。

4

1 回答 1

0

HttpClient是一项服务,不能放入imports数组中。您应该将其替换HttpClientModule为提供HttpClient.

于 2018-06-04T05:59:48.043 回答