问题描述
我正在尝试模拟尚未在npm存储库中发布的外部依赖项。
import Utils from 'external-dependency';
jest.mock('external-dependency',() => ({
default: ()=> jest.fn()
}));
找不到模块“外部依赖性”
如何在Jest中模拟不存在的依赖关系?
解决方法
如the reference中所述,
第三个参数可用于创建虚拟模拟-系统中不存在的模块模拟
还要注意,jest.mock
返回值默认情况下转换为CommonJS模块。如果是ES模块,则应为:
jest.mock('external-dependency',() => ({
__esModule: true,default: ()=> jest.fn()
}),{virtual: true});