问题描述
我们在 package.json 文件的脚本部分指定不同的脚本。 我想通过脚本运行cucumber-js 并指定标签以仅执行一组特定的测试。
此命令在命令行中运行良好: npx Caribbean-js --tags "@taggedTest" 但是,在脚本部分,我收到一个错误。 脚本部分如下所示:
...
"scripts": {
"e2e": "npx cucumber-js","e2e_taggedTests": "npx cucumber-js --tags \"@taggedTests\"","unitTests": "jest"
}
...
所以我转义了引号,但我无法转义@ (at) 符号。 这就是我收到此错误的原因:
Unexpected token @ in JSON at position 1097 while parsing near '...cumber-js --tags \"\@taggedTests\"
有什么办法可以转义脚本部分中的@ (at) 符号以实际使用它吗?它在不转义其他部分(如依赖项部分)的情况下工作正常,但我不知道在脚本部分做什么,并且在官方文档中没有找到任何内容?
期待您的反馈。
解决方法
我什至不知道您为什么要尝试使用引号来提及标签。您可以简单地使用它而无需引号。我尝试使用 repo here 并且只需附加 --tags @test
,您不需要引用标签表达式,除非它包含空格(例如更高级的,如 @foo or @bar
)。