Codex gen-ut 技能:为 ShardingSphere 编写分支覆盖单元测试
EnglishCodex 安装步骤
- 在包含固定版本 GitHub 原文的 ShardingSphere 工作副本中,确认 `.codex/skills/gen-ut/SKILL.md` 和同级的 `code-implementation` 技能都存在,保留仓库原有目录。
- 用 Codex 打开仓库根目录,输入 `$gen-ut` 和目标类完整名称。若技能选择器没有列出它,请在同一条任务中明确要求读取 `.codex/skills/gen-ut/SKILL.md` 和 `AGENTS.md`。
中文摘要
给出 ShardingSphere 的 Java 目标类和 Maven 模块,让 Codex 先列出目标类负责的分支,再扩充对应的单元测试。适合补齐遗漏的异常路径、检查参数化测试是否值得合并,以及核对指定的覆盖率目标。
SKILL.md 中文导读
可复现示例
在本地 ShardingSphere 练习分支里,选一个已有单元测试的路由规则类。给 Codex 发送「$gen-ut,目标类为我当前打开的 Java 文件,请先列出识别到的完整类名、所属 Maven 模块及规则存在和不存在的两个分支。确认后,只更新对应 Test 文件。」工作步骤
- 给出目标生产类的完整名称,并提供已知的 Maven 模块或测试类。
- 先核对分支表,区分目标类负责的决定与依赖负责的结果,再把场景映射到已有测试类。
- 按已授权范围补写测试,并检查相关测试、目标覆盖率和仓库质量门禁的实际结果。
验收方法
分支表应给出两条场景及对应断言。确认后,改动应限于目标类对应的测试文件或必需的测试资源。执行时报告实际 Maven 测试结果,若命令无法运行则说明原因。
GitHub 原文 · 更新日期
适用环境
需要 Codex 和包含此技能的 ShardingSphere 工作副本。执行测试时还需要该仓库要求的 JDK 和可用的 Maven 环境。
常见问题
使用 gen-ut 时,需要重新创建测试类吗?
先找同名的 `<目标类名>Test`。有现成测试类时在原文件补齐场景,只有找不到对应测试类时才创建。