我在父项目中有以下课程(父项目将是子项目中的模块):
export default class testService {
constructor({loggerFactory,childService}) {
this.logger = loggerFactory.logger
this.child = childService;
}
}
当我运行测试时,由于子服务不存在,测试已失败。 仅当我打开在节点模块中包含父模块的子项目时,该服务才存在
所以我的问题是我该如何模拟它以防止测试失败
答案 0 :(得分:2)
在测试中实例化类时,可以传递存根childService
:
const loggerFactory = {
logger: () => {},
}
const childService = {}
const mockTestService = new testService({loggerFactory, childService});