【问题标题】:How to mock a module for only one test file with Jest?如何使用 Jest 仅模拟一个测试文件的模块?
【发布时间】:2017-11-11 20:49:23
【问题描述】:

我正在使用 Jest,我想模拟来自另一个模块的一些函数(我们称之为 dependency)。

我能够模拟dependency 全局,将其放在我的__tests__ 文件夹中的__mocks__ 文件夹中。

不幸的是,我需要实际的dependecy 进行所有其他测试。那么,如何指定我只需要在我的file1.js 中需要模拟的dependecy,而不是在所有其他文件中?

PS:我可以在我的file1.js 文件夹中创建一个__mocks__ 文件夹,但是这个文件在根目录中,所以当任何文件需要dependency 时,它将从__mocks__ 中提取。

【问题讨论】:

    标签: unit-testing jestjs


    【解决方案1】:

    你需要使用jest.mock:

    jest.mock('path/to/dependency', () => 'someMockValue')
    

    注意,路径是相对于测试文件的,而不是你要测试的文件。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-08-27
      • 2021-03-03
      • 1970-01-01
      • 1970-01-01
      • 2017-02-13
      • 1970-01-01
      • 2021-12-10
      • 2021-08-22
      相关资源
      最近更新 更多