如何在脚本部分的 package.json 中使用 @ (at) 符号我的情况:为标记的功能运行黄瓜 js

问题描述

我们在 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)。

另见:https://cucumber.io/docs/cucumber/api/#tag-expressions

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...