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

如何在应用构建时打印JUnit测试结果日志

在构建时查看JUnit测试用例的运行统计及状态

不管你用Maven还是Gradle,都可以通过配置构建工具实现这个需求,具体操作如下:

Maven 配置

Maven默认通过Surefire插件执行JUnit测试,默认会在控制台输出测试汇总统计(总运行数、成功/失败/跳过数量),如果想看到每个测试用例的具体状态,需调整插件配置:

在项目的pom.xml中,添加或修改Surefire插件的配置:

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-surefire-plugin</artifactId>
            <version>3.2.5</version> <!-- 使用最新稳定版 -->
            <configuration>
                <!-- 强制在控制台输出测试结果,不写入文件 -->
                <useFile>false</useFile>
                <!-- 始终显示测试汇总信息 -->
                <showSummary>always</showSummary>
                <!-- 确保匹配所有测试类 -->
                <includes>
                    <include>**/*Test.java</include>
                </includes>
            </configuration>
        </plugin>
    </plugins>
</build>

执行mvn test或mvn clean install时,控制台会打印每个测试用例的名称、运行状态(成功/失败/跳过),最后输出总统计数据。

Gradle 配置

Gradle的Java插件自带测试任务,默认输出测试汇总,要查看每个测试的详细状态,需在构建脚本中配置test任务的日志选项:

Groovy DSL 示例

test {
    testLogging {
        // 指定输出通过、跳过、失败的测试事件
        events 'passed', 'skipped', 'failed'
        // 可选:显示测试用例中的标准输出/错误
        showStandardStreams = true
        // 始终显示测试汇总统计
        showSummary = 'always'
    }
}

Kotlin DSL 示例

tasks.test {
    testLogging {
        events("passed", "skipped", "failed")
        showStandardStreams = true
        showSummary = TestLogging.ShowSummary.ALWAYS
    }
}

执行gradle test或gradle build时,控制台会逐一打印每个测试用例的状态,最后输出总运行数、成功/失败/跳过的数量统计。

额外提示

如果使用JUnit 5,还可以通过自定义TestExecutionListener收集测试数据并输出,但这种方式需要编写代码,适合定制化日志格式的场景。对于大多数常规构建场景,直接配置构建工具的方式更简单高效。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.21 21:54:14