首页 > 解决方案 > 在@cucumberoptions 中使用多个标签时不收集测试/场景

问题描述

当我在@CucumberOptions 中使用多个标签时,TestRunner 不会收集任何测试,但是,当我只使用一个标签时它工作正常,例如:

@CucumberOptions(features = "src/test/java/features", 胶水 = {"stepDefinitions"}, tags = {"@smoke"})

有人可以建议我在下面的代码中做错了什么吗?如果有人想查看版本,我还使用 pom.xml 附加了依赖项。

我在 StackOverflow 上尝试了可能的现有答案,但没有一个有效

地点特征

Feature: Some feature

  @smoke
  Scenario: Verify AddPlaceAPI
    Given Add place payload
    When User calls "AddPlaceAPI" using HTTP "post" request
    Then API call is a success with status code 200

  @regression
  Scenario: Verify place is deleted successfully using DeletePlaceAPI
    Given DeletePlace payload
    When User calls "DeletePlaceAPI" using HTTP "post" request
    Then API call is a success with status code 200

TestRunner.java

package cucumber.Options;

import io.cucumber.junit.Cucumber;
import io.cucumber.junit.CucumberOptions;
import org.junit.runner.RunWith;

@RunWith(Cucumber.class)
@CucumberOptions(features = "src/test/java/features", glue = {"stepDefinitions"}, tags = {"@smoke,@regression"})
public class TestRunner {

}

Pom.xml

   <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.11</version>
      <scope>test</scope>
    </dependency>

    <dependency>
      <groupId>io.cucumber</groupId>
      <artifactId>cucumber-java</artifactId>
      <version>5.5.0</version>
    </dependency>

    <dependency>
      <groupId>io.cucumber</groupId>
      <artifactId>cucumber-junit</artifactId>
      <version>5.5.0</version>
      <scope>test</scope>
    </dependency>

还尝试使用两个不同的 cmd,但它们都不起作用:

mvn clean  test -Dcucumber.options="--tags @smoke,@regression"
or
mvn clean  test -Dcucumber.filter.tags="@smoke,@regression"

标签: javacucumbercucumber-jvmcucumber-javacucumber-junit

解决方案


推荐阅读