小编gle*_*hes的帖子

jest.mock中的Jest'TypeError:is not a function'

我正在编写一个Jest模拟,但是在模拟本身之外定义模拟函数时似乎有问题。

我有一堂课:

myClass.js    

class MyClass {
  constructor(name) {
    this.name = name;
  }

  methodOne(val) {
    return val + 1;
 }

  methodTwo() {
    return 2;
  }
}

export default MyClass;
Run Code Online (Sandbox Code Playgroud)

和一个使用它的文件:

testSubject.js

import MyClass from './myClass';

const classInstance = new MyClass('Fido');

const testSubject = () => classInstance.methodOne(1) + classInstance.name;

export default testSubject;
Run Code Online (Sandbox Code Playgroud)

测试:testSubject.test.js

import testSubject from './testSubject';

const mockFunction = jest.fn(() => 2)

jest.mock('./myClass', () => () => ({
    name: 'Name',
    methodOne: mockFunction,
    methodTwo: jest.fn(),
}))


describe('MyClass tests', () => {
    it('test …
Run Code Online (Sandbox Code Playgroud)

javascript unit-testing mocking jestjs

4
推荐指数
4
解决办法
9230
查看次数

标签 统计

javascript ×1

jestjs ×1

mocking ×1

unit-testing ×1