使用我不想包含的模块测试组件

时间:2017-04-06 13:19:12

标签: angular

在我尝试设置测试的组件中,模板使用了一些第三方模块,例如ng2-bootstrap模块alertModuledropDownModule

它们与我尝试为此特定组件设置的测试无关。但如果我不包含它们,我的测试就会失败,因为html由于未知的指令而无法编译等等。

有没有办法创造虚假"空"要导入的模块,甚至更好地不关心它们并使Angular忽略第三方模块所以我不必将它们包含在testBed中(它们不会被渲染)在模板上但我不在乎这里,因为我的测试不涉及它们。

1 个答案:

答案 0 :(得分:1)

如果有一些组件您不需要声明,您可以模拟它们或使用错误中建议的NO_ERRORS_SCHEMA和角度文档,如下所示:

beforeEach( async(() => {
TestBed.configureTestingModule({
declarations: [ AppComponent, RouterLinkStubDirective ],
schemas:      [ NO_ERRORS_SCHEMA ]
})

查看https://angular.io/docs/ts/latest/guide/testing.html#!#shallow-component-test了解更多信息:)

相关问题