gpt4 book ai didi

javascript - 如何使用 jest 为使用 uuid 的函数编写测试用例?

转载 作者:行者123 更新时间:2023-11-30 11:22:20 25 4
gpt4 key购买 nike

我正在使用 jest用于编写测试用例。我的一个函数使用 uuid因此它不是一个纯函数。代码是这样的:

const myFunc = () => {
const a = uuid();

return a;
}

我正在编写我的测试用例:

test('should return a unique id value', () => {
const a = uuid();
expect(myFunc()).toEqual(a);
});

显然它不会工作,因为它每次都会生成一个唯一的 Id。如何为此类功能编写测试用例。

[编辑]

我不想测试 uuid 函数,因为它总是会生成一个新的 id,而且它是一个已经在测试中的库函数。我想测试另一个使用 uuid 的函数,生成新对象并返回它。这个函数被其他一些函数使用等等,这让我无法测试其中的任何一个,因为初始对象的 id 与我在测试时使用的 id 不同。

最佳答案

我发现这个效果非常好。

在测试文件的顶部:

// your regular imports here

jest.mock('uuid', () => ({ v4: () => '00000000-0000-0000-0000-000000000000' }));

// describe('test suite here', () => {

在实际代码中:

import { v4 as uuidv4 } from 'uuid';

关于javascript - 如何使用 jest 为使用 uuid 的函数编写测试用例?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49333672/

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