我有以下模块要在Jest中进行测试:
// myModule.js
export function otherFn() {
console.log('do something');
}
export function testFn() {
otherFn();
// do other things
}
如上所示,它导出了一些命名函数并重要地testFn
使用otherFn
。
在Jest中,当我为其编写单元测试时testFn
,我想模拟该otherFn
函数,因为我不希望输入错误otherFn
影响我的单元测试testFn
。我的问题是我不确定做到这一点的最佳方法:
// myModule.test.js
jest.unmock('myModule');
import { testFn, otherFn } from 'myModule';
describe('test category', () => {
it('tests something about testFn', () => {
// I want to mock "otherFn" here but can't reassign
// a.k.a. can't do otherFn = jest.fn()
});
});
任何帮助/见解表示赞赏。
otherFn
到一个单独的模块中并对其进行模拟。