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

如何让Gradle执行已编写的ArchUnit测试?

让Gradle自动执行ArchUnit JUnit5测试的方法

不需要额外引入ArchUnit Gradle插件,只要把Gradle的测试任务配置为支持JUnit5,就能自动识别并执行test/java目录下带@ArchTest注解的测试类,具体步骤如下:

1. 确认依赖配置无误

你的构建脚本里已经添加了archunit-junit5依赖,保险起见可以同时显式引入JUnit Jupiter引擎(多数情况下archunit-junit5会间接依赖它,但显式声明能避免版本冲突):

Groovy DSL(build.gradle)示例:

dependencies {
    testImplementation 'com.tngtech.archunit:archunit-junit5:1.2.1' // 替换成你使用的版本
    testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.10.0'
}

Kotlin DSL(build.gradle.kts)示例:

dependencies {
    testImplementation("com.tngtech.archunit:archunit-junit5:1.2.1")
    testRuntimeOnly("org.junit.jupiter:junit-jupiter-engine:5.10.0")
}

2. 配置Test任务启用JUnit5支持

让Gradle的test任务使用JUnit Platform,这样它会自动扫描所有JUnit5规范的测试(包括ArchTest):

Groovy DSL示例:

test {
    useJUnitPlatform()
    // 可选:添加这行能看到更详细的测试执行日志
    testLogging {
        events 'PASSED', 'FAILED', 'SKIPPED'
    }
}

Kotlin DSL示例:

tasks.test {
    useJUnitPlatform()
    testLogging {
        events("PASSED", "FAILED", "SKIPPED")
    }
}

3. 执行测试

配置完成后,直接运行Gradle的test任务即可:

  • 命令行执行:./gradlew test(Linux/Mac)或者gradlew.bat test(Windows)
  • 在IntelliJ里,也可以直接点击Gradle面板中Tasks -> verification -> test选项运行

这样Gradle就会自动扫描test/java下所有带@ArchTest的测试类并执行,完全不需要额外插件配置。

内容的提问来源于stack exchange,提问作者Martin Schröder

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.16 06:35:18