假设我有一个@NgModule
,看起来像这样:
@NgModule({
declarations: [
...
MyComponent,
MyComponentMock
],
imports: [
...
],
exports: [
...
MyComponent,
MyComponentMock
],
...
})
其中
@Component({
selector: 'my-comp',
...
})
export class MyComponent { ... }
和
@Component({
selector: 'my-comp-mock',
...
})
export class MyComponentMock {
}
在使用此库/模块的Angular SPA中,我显然想
MyComponent
MyComponentMock
的测试中使用MyComponent
SPA 我知道我可以在SPA内本地创建MyComponentMock
并模拟MyComponent
并获得SPA中父组件的测试通过。
有没有一种方法可以在父组件SPA测试中将MyComponent
替换为MyComponentMock
?我可以选择性地用my-comp
替换/更新my-comp-mock
还是使用TestBed.overrideComponent
?
我找不到能做到这一点的好例子,当我这样做时,并不是所有的测试都能通过。
这甚至允许吗?