【发布时间】:2022-02-11 01:48:01
【问题描述】:
我正在编写一个 Jest 测试。我需要测试一个调用另一个 .js 文件中的函数的函数。这个被调用的函数返回一个解析为字符串的承诺。当我开始测试时,我收到错误“file.function is not a function”,其中不是“file”,而是导入的 js 文件的名称,而不是“function”,而是返回的函数的名称承诺。
在我的测试之下:
test('test', () => {
jest.mock('../file', () => {
function: jest.fn().mockReturnValue('Returned String')
});
myFunction();
expect().toBe();
});
解释:首先我模拟了包含返回承诺的函数的模块。使用第二个参数(jest.mock)我模拟了模拟模块中包含的函数。接下来我调用我想要测试的函数(这个函数将调用模拟函数)。最后,我测试了预期。有人可以帮助我,拜托。不知道怎么解决,谢谢大家。
【问题讨论】:
标签: javascript unit-testing jestjs mocking automated-tests