如何对不存在的外部依赖进行开玩笑

How to do jest mocking for non-exist external dependency

我正在尝试模拟尚未在 npm 存储库中发布的外部依赖项。

import Utils from 'external-dependency';
jest.mock('external-dependency', () => ({
default: ()=> jest.fn()
}));

上面的笑话模拟显示以下错误,因为该依赖项尚不存在。

Cannot find module 'external-dependency'

如何在 Jest 中模拟不存在的依赖项?

the reference

所述

The third argument can be used to create virtual mocks – mocks of modules that don't exist anywhere in the system

另请注意,jest.mock return 值默认转换为 CommonJS 模块。如果是 ES 模块,它应该是:

jest.mock('external-dependency', () => ({
  __esModule: true,
  default: ()=> jest.fn()
}), {virtual: true});