如何在Jest v24.6 toMatchSnapshot(propertyMatchers ?,提示?)中指定第二个参数?

时间:2019-05-27 16:12:16

标签: javascript jestjs

从Jest v22升级到Jest v24之后,我正在更新Jest快照测试。 toMatchSnapshot()函数更改为采用2个参数而不是1个参数,如此处所示-

v22-https://jestjs.io/docs/en/22.x/expect#tomatchsnapshotoptionalstring

v24-https://jestjs.io/docs/en/expect#tomatchsnapshotpropertymatchers-hint

我仍然想使用hint(string)参数,但是我不想使用propertyMatchers(object)参数。不幸的是,如果我只是传入一个空的对象常量(例如toMatchSnapshot({},'test')),它会使生成的快照输出成为约100000多行的对象,而不是以前的XML输出。

关于我可能如何做到这一点的任何想法?有人在生成快照输出时遇到类似的问题吗?

示例实现如下:

test('Test', () => {
    files.forEach((file) => {
        expect(file.data).toMatchSnapshot({}, file.path);
    });
)};

1 个答案:

答案 0 :(得分:0)

如果将字符串作为第一个参数而不是对象作为参数传入,Jest将把它当作提示(v22术语中的“可选快照名称”):

test('Test', () => {
    files.forEach((file) => {
        expect(file.data).toMatchSnapshot(file.path);
    });
)};