您可以使用 IntelliJ 原生导入器Eclipse Buildship 在 IDE 中打开示例。

此示例展示了如何创建一个插件,该插件带有一个自定义任务,用于生成测试事件,类似于用于基于 JVM 的内置 Test 任务。该插件通过包含的构建进行打包。

此示例旨在演示平台提供商(如 Android 或 Kotlin Multiplatform)如何使用低级 API 生成测试事件。

build.gradle.kts
plugins {
    id("com.example.custom-test")
}

version = "1.0.2"
settings.gradle.kts
rootProject.name = "custom-test-task"
includeBuild("plugin")
includeBuild("consumer")
build.gradle
plugins {
    id 'com.example.custom-test'
}

version = '1.0.2'
settings.gradle
rootProject.name = 'custom-test-task'
includeBuild('plugin')
includeBuild('consumer')

此示例包含两部分

  • custom-test-task 插件,它定义了一个生成测试事件的自定义任务。

  • consumer 构建,它创建一个 Tooling API 客户端来接收测试事件。

consumer 需要 Java 21。

运行 gradle test 以运行自定义测试任务。默认情况下,没有测试会失败,控制台日志中也不会出现任何内容。

运行 gradle test --fail 以运行带失败测试的自定义测试任务。控制台日志将显示测试事件。

运行 gradle :consumer:run 以运行 Tooling API 客户端。客户端将运行 gradle test,如上所述,并打印出所有接收到的测试事件。

作为生态系统的平台提供商,您将创建自定义测试任务并使用 TestEventReporter API 来生成测试事件。

作为工具集成商(如 IDE),您将使用 Tooling API 客户端接收测试事件并将其适当地显示给用户。

有关更多信息,请参阅Gradle 插件参考章节