这个模拟是否会在此测试之外显示出来?

时间:2017-09-18 13:21:49

标签: javascript testing jestjs

我看到的测试在jest.mock块之外有describe次调用。

我担心这会在测试之外创建一个可见的更改。我不希望这个测试影响其他测试。

应该在describe块中移动jest.mock还是按原样运行?

import target from '../';

jest.mock('../../../helpers/helpers.api', () => ({
    httpPost(...args) {
        return args;
    }
}));

describe('my component', () => {
    it('should foo', () => {
        //... 
    });
});

1 个答案:

答案 0 :(得分:2)

据我了解,你的例子很好。

  

使用jest.mock模拟的模块仅针对调用jest.mock的文件进行模拟。即使在模拟模块的测试文件之后运行,导入模块的另一个文件也将获得原始实现。

- https://facebook.github.io/jest/docs/en/jest-object.html#jestmockmodulename-factory-options