首页 文章

如何在角度2中避免单元测试的依赖性

提问于
浏览
2

我看到很多关于如何在角度2中对单个测试组件进行单元测试的示例,但是当涉及到测试使用服务的组件时,维护测试床提供者和导入变成了一场噩梦 . 我怎么能避免呢?

例如,我有myComponents,他使用myService,他使用HttpClient . 要测试myComponent,我必须为myService和HttpClient设置提供程序 . 如果我将其他服务添加到myService的构造函数中,我将必须编辑使用此服务的cmoponents的所有测试页 .

我不能告诉testbed获取这些模块的默认依赖项吗?

1 回答

  • 1

    问题源于错误的测试方法 . 单元测试是关于测试单个单元 .

    在这种情况下

    myComponents,使用myService,使用HttpClient . 要测试myComponent,我必须为myService和HttpClient设置提供程序 .

    它测试的是 myComponent 单位 . 这意味着任何其他单位都应该被嘲笑或存根,包括 myService .

    虽然这个

    获取这些模块的默认依赖项

    被认为不是单位,而是整合/ e2e测试 .

相关问题