gpt4 book ai didi

javascript - 如何在 Jest 中测试返回值?

转载 作者:行者123 更新时间:2023-12-01 23:48:19 26 4
gpt4 key购买 nike

我想用 Jest 测试一个简单的函数。我读过https://jestjs.io/docs/en/mock-functions很多次,但我不确定出了什么问题,也无法在 stackoverflow 上找到明确的答案。我觉得这是一个非常简单的测试。

这是我的功能:

public hello(name: string) {
return 'Hello ' + name
}

这是我的测试:

let hello = jest.fn()
jest.mock('./myfile.ts', () => {
return hello
})

beforeEach(() => {
hello('world')
})

describe('hello test', (){
it('expects to return concatenated string', () => {
expect(hello.mock.results[0].value).toBe('Hello world') // returns as undefined - Test fails
})
})

我一直为 mock.results 而不是 'Hello world' 获取 undefined。

我做错了什么?我觉得我忽略了一些非常简单的事情。

最佳答案

您正在尝试模拟要测试的函数。您应该只模拟其他依赖项。

这就足够了:

expect(hello('world')).toBe('Hello world')

关于javascript - 如何在 Jest 中测试返回值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63836394/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com