首页 >web前端 >js教程 >如何使用 Jest 模拟同一模块中的函数?

如何使用 Jest 模拟同一模块中的函数?

Linda Hamilton
Linda Hamilton原创
2024-12-04 20:08:19457浏览

How to Mock Functions Within the Same Module Using Jest?

在 Jest 中模拟同一模块中的函数

要使用 Jest 模拟模块中的函数,建议的方法是将模块导入到它自己的代码文件。这样可以更轻松地模拟模块内的函数。

考虑以下示例:

// module.js
export function bar() {
    return 'bar';
}

export function foo() {
    return `I am foo. bar is ${bar()}`;
}

在相应的测试文件中,可以通过将模块导入到其自己的代码中来简化模拟栏file:

// module.test.js
import * as thisModule from './module';

describe('module', () => {
    it('foo', () => {
        spyOn(thisModule, 'bar').and.returnValue('fake bar');
        expect(thisModule.foo()).toEqual('I am foo. bar is fake bar');
    });
});

在这种方法中,foo 引用了导入的 bar 实例,可以直接模拟 bar 进行测试目的。

以上是如何使用 Jest 模拟同一模块中的函数?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn