我有一个“嵌套”组件,它发出一个 Web 请求,我正在使用来自另一个组件“父级”的这个组件。
我正在尝试为“父级”编写一些集成测试,但由于“嵌套”组件的 Web 请求失败,它们失败了。
而不是模拟请求,我只是希望模拟一些“嵌套”功能来阻止网络请求。这很容易实现reopen
,但当然这会导致“嵌套”测试失败。
有谁知道是否有一种方法可以存根“嵌套”片段,或者使用注册表将“嵌套”替换为扩展类?
我有一个“嵌套”组件,它发出一个 Web 请求,我正在使用来自另一个组件“父级”的这个组件。
我正在尝试为“父级”编写一些集成测试,但由于“嵌套”组件的 Web 请求失败,它们失败了。
而不是模拟请求,我只是希望模拟一些“嵌套”功能来阻止网络请求。这很容易实现reopen
,但当然这会导致“嵌套”测试失败。
有谁知道是否有一种方法可以存根“嵌套”片段,或者使用注册表将“嵌套”替换为扩展类?
要换出一个组件,只是为了单个测试模块的目的,只需注册一个自定义组件来替换原来的(仅适用于测试模块的范围):
moduleForComponent('component-under-test', 'description', {
integration: true,
beforeEach() {
this.container.registry.register('component:nested-component', NestedComponent.extend({
modifiedFunction() {
}
}));
}
});