Jest具有snapshot功能,其文档示例演示了如何将其与React组件一起使用。 (renderer.create(...).toJSON()
)。
使用此功能测试常规Javascript对象时,我有两种可能的方法来实现此目的:
expect(x).toMatchSnapshot()
expect(JSON.stringify(x, undefined, 2)).toMatchSnapshot()
JSON.stringify
作为序列化工具当然,保存的.snap
文件的内容在每种情况下都不同;但除此之外他们会以同样的方式有效地执行。
在这种情况下哪个被认为是最佳做法?
还有另一种推荐方式吗?
答案 0 :(得分:1)
没有最好的做法。在您的情况下做最适合您的套房。如果您发现您的快照包含JSON.stringify
更有价值的信息,请选择它。
对于复杂值(如Vue组件或库对象),您也可以编写自己的序列化程序:http://facebook.github.io/jest/docs/configuration.html#snapshotserializers-array-string