收到错误订阅不是茉莉花中的函数

getting error Subscribe is not a function in jasmine

我遇到错误,订阅不是 angular 单元测试中的函数

这是我在组件中使用的调用

this.myService.employees.subscribe(emp => this.emp = emp);

当我为此创建一个模拟服务来测试上面的代码时出现错误。

任何人都可以建议我如何测试上面的 observable。

我想在this.myService.employees.subscribe(emp => this.emp = emp);从组件

订阅时发送模拟数据

employeesBehaviorSubject 可观察的

能否分享您在测试中如何配置服务的代码?

通常你应该这样做:https://ng-mocks.sudo.eu/extra/mock-observables

最好的选择是使用测试库,例如 ng-mocks

beforeEach(() => MockBuilder(MyComponent, MyService));

it('test', () => {
  const employees$ = new Subject();
  MockInstance(MyService, 'employees', employees$);

  const fixture = MockRender(MyComponent);
  employees$.next([]);
  // some assertions.
});