如何使用OR AND多个标签运行Cucumber

Bal*_*ala 3 cucumber cucumber-jvm

我有例子的黄瓜方案。示例分为多个标签,如下所示:

Feature: ...
  Scenario Outline: ...
    ...    
    @Admin @INT
      Examples:
      ...    
    @Admin @EXT
      Examples:
      ...
    @User @EXT
      Examples:
      ...
    @User @INT
      Examples:
      ...
Run Code Online (Sandbox Code Playgroud)

要运行与标签的情况@Admin@EXT我使用

...tags = {"@Admin","@EXT"}...

我如何使用

{"@Admin","@EXT"}&& {"@User","@INT"}{"@Admin","@EXT"}||{"@User","@INT"}

Mik*_*y56 9

此更改已引入cumming-jvm 2.0.0(2017-08-29)

支持标签表达式(#1035BjörnRasmusson的一部分)

Migrating from old style tags
--tags @dev stays the same
--tags ~@dev becomes --tags 'not @dev'
--tags @foo,@bar becomes --tags '@foo or @bar'
--tags @foo --tags @bar becomes --tags '@foo and bar'
--tags ~@foo --tags @bar,@zap becomes --tags 'not @foo and (@bar or @zap)'
Run Code Online (Sandbox Code Playgroud)

所以也许是这样的:

-Dcucumber.options="--tags '(@Admin and @EXT) or (@User and @INT)'"
Run Code Online (Sandbox Code Playgroud)

编辑

对于@CucumberOptions,上面的内容类似于:

tags = {"@tag"} 不变

tags = {"~tag"} 变成 tags = {"not tag"}

tags = {"@tag1,@tag2") 变成 tags = {"@tag1 or @tag2"}

tags = {"@tag1","@tag2"} 变成 tags = {"@tag1 and @tag2"}

tags = {"@tag1","@tag2,@tag3"} 变成 tags = {"@tag1 and (@tag2 or @tag3)"}

  • 老问题,但其他人可能有。 (2认同)