如果测试,则通过文件导入模拟

Import mocks over file if testing

我正在使用 Jest 框架来测试 React Native 应用程序。 我想默认导入 __mocks__/store.js 而不是其他商店,这在 __tests__app 中都是必需的。但是,似乎只有 __tests__ 个文件正在加载模拟版本。

__tests__
  index.js
app
  __mocks__
    store.js
  sagas.js
  store.js

似乎 sagas.js 没有使用商店模拟单例。

知道怎么做吗?

我使用 proxyquire 伪造 Node require / ES5 import

刚才解决了。希望分享以防对其他人有用。

只需要从__tests__显式调用jest.mock('../app/store')

编辑:查看此答案以了解如何递归执行此操作: