用途:为 Java 到 Kotlin 迁移提供验收证明,目标是相同输入在等价环境下产生完全一致的可观察行为。
主要能力:按独立维度记录状态,包括 Java 生产对象与成员、Java 测试文件与具体用例、测试资源与黄金文件等资产、全量 Java/Kotlin 差分用例、Kotlin 特有义务(空/平台类型边界、协程取消、Flow 生命周期、Java ABI、Gradle/工具链兼容),以及覆盖率、变异、模糊/属性、负载、安全等补充证据。前四维须达到精确完整,后两类为附加风险证据。
用法:对每个 Java 测试源和具体用例建立台账(含参数来源、嵌套/动态测试、继承契约套件、标签、假设、禁用用例、夹具和外部前置条件),在 Kotlin 中无损实现,保持输入、设置、操作、断言强度、预期失败类别/消息、副作用、顺序、清理和用例身份;分组参数化测试仅在逐用例映射并单独报告结果时可接受。资源尽量直接复制并保留字节、路径、编码、行尾和归档结构,生成 SHA-256 清单。创建名为 <project>-test 的 Gradle 模块承载整项目场景、差分框架和字节一致的资源。可用捆绑辅助脚本盘点:python3 scripts/audit_migration_tests.py --java-root /path/to/java-project --target-root /path/to/kotlin-project --target-extension .kt。每个源用例需在版本化输入下同时执行 Java 与 Kotlin,比较返回值与类型、结构化错误与因果链、顺序与副作用、序列化字节与资源生命周期等,原始输出分开存储并固定提交、运行器、规范化版本、区域、时区、编码、依赖、种子和平台。
限制:被跳过、忽略、禁用、仅编译或未运行的目标用例不计为完成;Java 套件须保持可执行;不得用翻译测试替代原套件;高覆盖率不能证明行为一致,不得削弱断言或为数字排除难测代码;仅当所有强制门禁零未解释例外通过时才可称“完成”。价格、平台支持范围等资料暂未提供。