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

Java Maven项目GitHub CI/CD配置:解决JUnit测试未执行问题

Maven项目GitHub Actions自动运行JUnit测试的正确配置

将以下内容保存为.github/workflows/maven-test.yml文件:

name: Maven Test
on: [push, pull_request]

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout code
        uses: actions/checkout@v4

      - name: Set up JDK
        uses: actions/setup-java@v4
        with:
          java-version: '17' # 根据你的项目JDK版本调整,比如8、11等
          distribution: 'temurin'
          cache: maven

      - name: Execute JUnit tests
        run: mvn test --batch-mode

关键配置说明

  • on: [push, pull_request]:触发条件,代码推送或创建PR时自动执行测试
  • cache: maven:缓存Maven依赖包,大幅缩短后续构建时间
  • mvn test:直接调用Maven的test目标,自动识别并运行符合规范的测试用例

排查"运行0个测试"的常见原因

  1. 目录结构不符合Maven规范:确保主代码放在src/main/java,测试代码放在src/test/java
  2. 测试类命名不匹配默认规则:Maven Surefire插件默认只执行命名为*Test.java、Test*.java或*TestCase.java的类,你的RobotMotionTest.java符合要求,若需自定义规则需在pom.xml中配置插件
  3. JUnit依赖配置错误:检查pom.xml是否正确引入JUnit依赖,以JUnit 5为例:
<dependencies>
  <dependency>
    <groupId>org.junit.jupiter</groupId>
    <artifactId>junit-jupiter-api</artifactId>
    <version>5.9.2</version>
    <scope>test</scope>
  </dependency>
  <dependency>
    <groupId>org.junit.jupiter</groupId>
    <artifactId>junit-jupiter-engine</artifactId>
    <version>5.9.2</version>
    <scope>test</scope>
  </dependency>
</dependencies>

<build>
  <plugins>
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-surefire-plugin</artifactId>
      <version>3.1.2</version>
    </plugin>
  </plugins>
</build>
  1. 测试方法未加注解:确保测试方法上标注了对应版本的@Test注解(JUnit 5用org.junit.jupiter.api.Test,JUnit 4用org.junit.Test)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.16 13:32:05