温馨提示:本文翻译自stackoverflow.com,查看原文请点击:javascript - Node Jest mocking a function in a function
javascript jestjs mocking node.js testing

javascript - Node Jest在函数中模拟函数

发布于 2020-04-11 00:04:58

我正在测试这样的方法:

test('Test', async () => {
    const result = await methodBeingTested(someData);
    })
})

然后我正在测试的方法看起来像这样:

import { insertData } from '../util/api';
export async function methodBeingTested(someData: any) {
    const data = await insertData(dateIdsomeData)

    //Do Some other stuff
    return data
}

我想模拟数据insertData方法返回,只是它不执行axios请求或插入到mongo / sql中。

我如何用Jest做到这一点?我主要是想测试NET中发生的其他内容的功能methodBeingTested

谢谢

查看更多

提问者
twcardenas
被浏览
33
Kaca992 2020-02-02 05:22

做这个:

jest.mock('../util/api', () => ({
   insertData: () => Promise.resolve(mockResult) // put here some result 
}));

// your tests

只要确保您的路径是正确的即可。