所以我开玩笑地用babel 6 / emotion 9在快照中正常生成了css和html,但是我需要更新到babel 7和emotion 10,但是用酶的快照测试不再起作用。更新所需代码后,代码可以编译并正常工作,只是测试被破坏了(迁移文档中没有任何内容显示与测试设置更新有关的任何内容)。
test('renders properly', () => {
// this works generating the correct css / html snapshot output
expect(renderer.create(<component.Template>test</component.Template>).toJSON()).toMatchSnapshot();
//this does not
const wrapper = shallow(<component.Template>test</component.Template>);
expect(toJson(wrapper)).toMatchSnapshot();
});
酶的版本生成以下输出:
exports[`renders properly 1`] = `
<ContextConsumer>
<Component />
</ContextConsumer>
`;
我尝试添加情感序列化器,方法是将其添加到jest配置中的snapshotSerializers
并手动添加到setupFilesAfterEnv
脚本中。
有人知道为什么我会得到这个输出吗?
答案 0 :(得分:1)
如果您正确配置了所有内容,请
test('renders properly', () => {
const wrapper = shallow(<component.Template>test</component.Template>);
expect(wrapper).toMatchSnapshot();
});
这应该可以正常工作。