如何在Angular 9中模拟Jasmine中的依赖模块以获得大量依赖关系?

时间:2020-07-27 05:29:23

标签: angular unit-testing dependency-injection jasmine karma-runner

我想为Angular项目中的一个组件编写单元测试。
Main Component类具有5-6个依赖关系,并且扩展了另外一个具有约7个依赖关系的Class。
为该组件配置TestBed的最佳方法是什么?我是否需要模拟所有12-13类来运行测试

1 个答案:

答案 0 :(得分:0)

您需要在要测试的组件中声明所需的所有功能。您可以导入或模拟它们。模拟要快得多。

您可以使用TestBed Module中的架构忽略测试中的其他组件(这将忽略所有其他子组件)。

schemas: [CUSTOM_ELEMENTS_SCHEMA]

您可以模拟这样的服务

providers: [{provide: MyService: useClass: {}]