相关疑难解决方法(0)

每次测试的Jest Mock模块

我对在Jest中嘲笑如何对实现进行单元测试感到困惑.问题是我想模仿不同的预期行为.

有没有办法实现这个目标?因为导入只能在文件的顶部,并且能够模拟在导入之前必须声明的内容.我也尝试传递一个本地函数,所以我可以覆盖行为,但是jest抱怨你不允许传递任何本地函数.

jest.mock('the-package-to-mock', () => ({
  methodToMock: jest.fn(() => console.log('Hello'))
}));

import * as theThingToTest from '../../../app/actions/toTest'
import * as types from '../../../app/actions/types'

it('test1', () => {
  expect(theThingToTest.someAction().type).toBe(types.SOME_TYPE)
})

it('test2', () => {
  //the-package-to-mock.methodToMock should behave like something else
  expect(theThingToTest.someAction().type).toBe(types.SOME_TYPE)
})
Run Code Online (Sandbox Code Playgroud)

在内部你可以想象theThingToTest.someAction()使用the-package-to-mock.methodToMock

unit-testing mocking jestjs react-native

25
推荐指数
4
解决办法
2万
查看次数

标签 统计

jestjs ×1

mocking ×1

react-native ×1

unit-testing ×1