从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);
});
)};
答案 0 :(得分:0)
如果将字符串作为第一个参数而不是对象作为参数传入,Jest将把它当作提示(v22术语中的“可选快照名称”):
test('Test', () => {
files.forEach((file) => {
expect(file.data).toMatchSnapshot(file.path);
});
)};