javascript - 如何在描述块中测试模块,然后在另一个中模拟它
问题描述
假设我们在一个文件module.js
中有 2 个异步模块,我在module.test.js
. 我已将它们导入为:
import { fn1, fn2 } from './module';
fn1
并在专用块上进行了测试describe
,那里没有问题。
f2
内部使用f1
。我想模拟f1
测试f2
它何时失败并成功。
不幸的是,如果我将其模拟为:
jest.mock('./module', () => ({
f1: jest.fn(),
}));
然后其他测试失败:
TypeError: (0 , _module.fn1) 不是函数
Jest 文档中的所有示例都处理导入的单个函数,在我的例子中,有多个,并且像上面那样模拟文件会影响所有这些。
知道如何fn1
仅模拟describe
测试的块fn2
吗?
解决方案
推荐阅读
- python - 如何传递在散景网络图中单击的对象
- windows - 为什么在子 shell 中运行 winrs 会改变它相对于它使用的用户的行为?
- reactjs - Socket.io 和 Next.Js
- flutter - Flutter中小部件的方法与单独的类?
- python - 为什么 python 期货中的 FIRST_COMPLETED 不早点返回?
- android-studio - 底部工作表对话框 - 带有关闭按钮的透明背景标题
- python - 从python中的多个pdf中提取特定页面
- html - 可以单独在 HTML 中使用 Label 标记吗?
- java - 如何将json数据从json数组解析到recyclerview java android?
- javascript - 如何使用 webpack 隔离引导程序和我的 css 类