You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Maven项目Cucumber测试执行结果始终为0的排查求助

排查Cucumber测试执行0用例问题

执行命令mvn test -Dcucumberoptions="--tags @Smoke"时,测试始终显示0用例执行,结合你提供的配置文件,排查方向如下:

1. 命令行参数格式错误

Cucumber的系统属性参数名是**cucumber.options**(注意中间的英文点),你使用的cucumberoptions格式错误,导致命令行的标签过滤参数完全不生效。即使参数修正后,也要确认feature文件确实包含@Smoke标签。

修正命令:

mvn test -Dcucumber.options="--tags @Smoke"

2. Feature文件存放路径不符合Maven规范

你的TestRunner中指定features = "src/test/java/features",但Maven默认只会编译src/test/java下的.java文件,不会将该目录下的.feature文件复制到测试类路径中,直接导致Cucumber找不到测试用例文件。

修正方案:

  • 将所有.feature文件移动到src/test/resources/features目录下
  • 同步修改TestRunner中的路径配置:
@CucumberOptions(
    features = "src/test/resources/features",
    glue = {"Steps"}
)

3. JUnit依赖冲突导致测试类未被识别

你的pom.xml中同时引入了JUnit 4和JUnit 5两套依赖:

  • JUnit 4:junit:junit:4.13.2、io.cucumber:cucumber-junit:7.5.0
  • JUnit 5:org.junit.jupiter:junit-jupiter-api等多个依赖

而TestRunner使用的是JUnit 4的@RunWith(Cucumber.class)注解,maven-surefire-plugin 2.22.2版本对JUnit 5兼容性有限,两套依赖共存会导致测试类无法被正确扫描执行。

修正方案:

  • 移除所有JUnit 5相关依赖:
<!-- 删除以下依赖 -->
<dependency>
    <groupId>org.junit.jupiter</groupId>
    <artifactId>junit-jupiter-api</artifactId>
    <version>5.9.0</version>
    <scope>test</scope>
</dependency>
<dependency>
    <groupId>org.junit.jupiter</groupId>
    <artifactId>junit-jupiter-engine</artifactId>
    <version>5.9.0</version>
    <scope>test</scope>
</dependency>
<dependency>
    <groupId>org.junit.jupiter</groupId>
    <artifactId>junit-jupiter</artifactId>
    <version>5.9.0</version>
    <scope>test</scope>
</dependency>
  • 替换Allure依赖为JUnit 4适配版本:
<dependency>
    <groupId>io.qameta.allure</groupId>
    <artifactId>allure-junit4</artifactId>
    <version>2.13.6</version>
</dependency>

4. 步骤定义包路径验证

确认Steps包确实存在,且所有步骤定义类都位于该包下;类上不要添加JUnit的@Test注解(会干扰Cucumber扫描逻辑);步骤方法的@When、@Then注解要与feature文件中的语句完全匹配。

补充验证步骤

  1. 先不使用命令行标签过滤,直接执行mvn test,验证是否能找到并执行feature文件中的用例
  2. 检查target/test-classes目录下是否存在.feature文件,确认Maven是否正确复制了测试资源

内容的提问来源于stack exchange,提问作者CvMr

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 08:35:32