Cucumber : Maven : Dcucumber.options : 如何拥有多个标签,其中一个是 IGNORE TAG 像"NOT @tag"



我正在尝试使用下面的命令与Maven运行Cucumber场景:

mvn clean install -Pgeneric-runner -Dmaven.test.failure。忽视"-Dcucumber。Options =——tags @tag1 and not @tag2'

上述Maven命令失败。然而,当我删除"not @tag2"从命令中,它执行得很好,没有任何失败。

。是否有可能修复上述maven命令,以便它可以执行具有"@tag1"并排除任何带有"@tag2"的场景。

请求援助。提前谢谢你。

所以您使用的是相当旧的Cucumber版本。关于它的很多事情都很奇怪。例如,cucumber.options接受命令行参数。

这意味着:

'-Dcucumber.options=--tags @tag1 and not @tag2'

被解释为命令行选项:

--tags @tag1 and not @tag2

读作:

--tags <the tag you want to run> <feature file> <feature file> <feature file>

所以你必须告诉Cucumber标签表达式属于一个组合:

--tags "@tag1 and not @tag2"

然后嵌套到另一个命令行参数中:

'-Dcucumber.options=--tags "@tag1 and not @tag2"'

这可能会起作用。这取决于你的shell如何处理引号。

你应该升级。然后你可以用-Dcucumber.filter.tags=tag1 and not @tag2,它的行为正常。你可以在这里找到帮助你升级的发行说明:https://github.com/cucumber/cucumber-jvm/tree/main/release-notes

相关内容

  • 没有找到相关文章

最新更新