Skip to content

Releases: wcpe/mc-testkit

v0.9.3

Choose a tag to compare

@wcpe wcpe released this 13 Sep 07:54

mc-testkit v0.9.3

变更

  • harness-core 0.1.1 / template harness 降至 Java 8,plugin.yml 不写 api-version:同一桩 jar 可在 Paper 1.7.10–1.21 代表版本加载(FR-21 多版本烟雾)。此前 api-version: 1.20 + Java 17 字节码导致旧服务端拒载;改成 1.8 又被 Paper 1.20+ 拒绝。现不声明 api-version(1.13+ 按 legacy 加载)。
  • GitHub Actions 升至 v5checkout / setup-java / setup-node / cache / upload-artifact / setup-gradle 从 v4 升到 v5。
  • 实机 E2E 仅手动触发 + 并行矩阵 + jar 缓存e2e.yml 拆为 Paper 8 代表版本烟雾 + Waterfall/BungeeCord/Velocity/Folia 场景 suite 并行;actions/cache 复用 ~/.gradle/caches/mc-testkit-jars

构件坐标top.wcpe.mc:mc-testkit:0.9.3(已发布 maven.wcpe.top

关联构件top.wcpe.mc:harness-core:0.1.1(Java 8 字节码,兼容 Paper 1.7.10–1.21)

消费方升级id("top.wcpe.mc-testkit") version "0.9.3";模板桩升级依赖 harness-core:0.1.1

v0.9.2

Choose a tag to compare

@wcpe wcpe released this 13 Sep 07:54

mc-testkit v0.9.2

变更

  • Gradle 双缓存兼容契约(构建缓存 + 配置缓存):注册原语统一为全部本插件任务声明 outputs.upToDateWhen { false },消费方开启 --build-cache 时 prepare / e2e / serve / stop 等副作用任务仍真实执行,不得 FROM-CACHE / UP_TO_DATE 假跳过。新增 TestKit 回归:本地 Build Cache 下 stopDevServeSUCCESS--build-cache--configuration-cache 同时开启时配置缓存可存储 + 重用且副作用任务不被构建缓存跳过。任务本身仍非 @CacheableTask(起服副作用不可入缓存)。

构件坐标top.wcpe.mc:mc-testkit:0.9.2(已发布 maven.wcpe.top

消费方升级id("top.wcpe.mc-testkit") version "0.9.2";可安全同时启用 --build-cache--configuration-cache

v0.9.1

Choose a tag to compare

@wcpe wcpe released this 13 Sep 07:53

mc-testkit v0.9.1

修复

  • 自测模式自动接线补齐 serve 任务:0.9.0 的自测模式只把 prepareE2e<Key> / e2e<Key> 自动依赖到本模块 jar 任务,遗漏了 serve<Key>(持久手测)——serve 自行预检并注入插件,jar 未产出时同样会在预检期失败。现自测模式下 serve 任务同样自动依赖 jar(真实消费者 MCE 的 serve("dev") 手测形态即命中此缺口)。

构件坐标top.wcpe.mc:mc-testkit:0.9.1(已发布 maven.wcpe.top

消费方升级id("top.wcpe.mc-testkit") version "0.9.1";自测模式下 serve<Key> 会自动依赖 jar,无需手写 dependsOn 样板。

v0.9.0

Choose a tag to compare

@wcpe wcpe released this 12 Sep 10:40

mc-testkit v0.9.0

新增

  • 自测模式(self-jar)默认接线:消费方 mcTestkit { } 未声明 pluginUnderTest 且本工程有 jar 任务时,框架按契约 §3.1「默认取工作区构建产物」自动注入本模块 jar 任务产物(build/libs/<name>-<version>.jar),并把 prepareE2e<Key> / e2e<Key> 自动依赖jar 任务上——消费方无需再手写 pluginUnderTest = env ?: 路径 双轨样板与 dependsOn 接线(此前该样板是首用 CI 失败的头号来源:只挂 taboolibMainTask 不会带上 jar,全新检出下 prepare 前置校验必挂)。运行期仍可用 MC_TESTKIT_E2E_PLUGIN_UNDER_TEST_JAR 覆盖(CI / GradleRunner 注入优先于 jar 产物路径)。显式声明过 pluginUnderTest 则完全尊重声明,0.8.x 消费方行为不变;本工程没有 jar 任务(未应用 java 插件,如纯代理拓扑)时告警并跳过,不抛错。
  • scenario(name) 无配置重载:Groovy 消费方可直接写 scenario('smoke'),不再被迫写显式空闭包 scenario('smoke') { }(Kotlin 默认参数对 Groovy 不可见)。
  • 自测模式缺 jar 的指路型中文报错:提示先执行 gradlew jar 或显式声明 pluginUnderTest,替代此前泛化的「缺少必需的依赖注入」。

构件坐标top.wcpe.mc:mc-testkit:0.9.0(已发布 maven.wcpe.top

消费方升级id("top.wcpe.mc-testkit") version "0.9.0";未声明 pluginUnderTest 时自动启用自测模式(取本模块 jar 产物并自动接线),显式声明则行为与 0.8.x 一致。