相关疑难解决方法(0)

手动模拟不适用于 Jest

有人可以帮我在 Jest 中手动模拟吗?:) 我尝试让 Jest 使用模拟而不是实际模块。

我的测试:

// __tests__/mockTest.js

import ModuleA from "../src/ModuleA"

describe("ModuleA", () => {
    beforeEach(() => {
        jest.mock("../src/ModuleA")
    })

    it("should return the mock name", () => {
        const name = ModuleA.getModuleName()
        expect(name).toBe("mockModuleA")
    })
})
Run Code Online (Sandbox Code Playgroud)

我的代码:

// src/ModuleA.js
export default {
    getModuleName: () => "moduleA"
}

// src/__mocks__/ModuleA.js
export default {
    getModuleName: () => "mockModuleA"
}
Run Code Online (Sandbox Code Playgroud)

我想我遵循了文档中关于手动模拟的所有内容,但也许我在这里忽略了一些东西?这是我的结果:

Expected value to be:
      "mockModuleA"
Received:
      "moduleA"
Run Code Online (Sandbox Code Playgroud)

javascript ecmascript-6 jestjs

11
推荐指数
1
解决办法
2万
查看次数

标签 统计

ecmascript-6 ×1

javascript ×1

jestjs ×1