[英]Angular test dependency module
我正在成功地对被测组件进行单元测试。 我必须向该组件添加更多功能-工具提示和翻译。 翻译服务是我的代码,我既可以使用翻译服务也可以使用模拟翻译服务来测试被测组件。
我遇到的问题是工具提示。 这些来自ng-bootstrap,可以通过在我的app.module中导入NgbModule.forRoot()来使用。 我不能像这样导入此模块来测试被测组件:
beforeEach(async(() => {
TestBed.configureTestingModule({
declarations: [ComponentUnderTest, TestHostComponent],
imports: [NgbModule.forRoot()],
providers: [LocaleService],
})
.compileComponents();
}));
这似乎不正确,我不想测试模块中的任何内容。
我如何在所有测试中导入该模块?
我尝试在测试项目中使用工具提示来复制您的错误,但是基本工具提示没有出现问题。 但是,一旦我开始使用[ngbTooltip],它便会引发错误,因为它无法识别此绑定。 为了解决这个问题,您将需要使用模拟指令创建模拟绑定。 以下似乎对我有用:
import { Directive, Input } from '@angular/core';
@Directive({
selector: '[ngbTooltip]'
})
export class MockTooltipDirective {
@Input()
ngbTooltip: string;
constructor() { }
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.