针对特定测试文件进行 Jest 快照更新

30

我希望你能帮我翻译如何更新单个快照文件的相关内容。文档中说只需添加“-t”和文件名即可,但这对我不起作用。

例如,在终端中使用以下命令:

jest -u -t test/js/tests/components/myTestApp.test.js

有什么想法为什么这不起作用。我也把它添加为字符串。
4个回答

18
根据文档https://facebook.github.io/jest/docs/en/cli.html-t选项不是用于搜索文件名,而是用于搜索特定的规范名称。他们提供了一个示例。
jest -u -t="ColorPicker"

其中“ColorPicker”是规范的名称,可以在describetest块中给出。


1
那么,我需要全局安装jest-cli吗?因为它显示“未将'term'识别为cmdlet的名称…”? - Cubelaster
2
@Cubelaster,你不必全局安装jest,因为你可以在其前面加上npx(即npx jest -u -t="ColorPicker")来调用该包的本地实例。 - ppak10

18

要更新特定的快照,您可以将名称作为参数传递给脚本test命令。

在 package.json 文件中

"test": "jest --verbose"

在命令行中

npm test "<spec name>" -- -u

或者

npm test "<spec name>" -- --updateSnapshot

谢谢!这两个命令行命令都对我有用,而且我不需要全局安装jest! - C.Kelly

17

这起作用

jest /path/to/file --updateSnapshot

6

如果你通过npm test运行Jest,你可以在npm test和Jest参数 - 路径和快照标志之间插入--来使用参数:

npm test -- path/to/file -u


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接