cm-test

Solid

用户直接运行 cm-test、要求分析当前分支相对主分支的业务影响,或说“测试已有功能”“根据代码生成用例”“用浏览器走查”时使用。无参数分析已提交差异、单测覆盖率与回归重点;明确说“补齐单测”时连续补测并重跑、审查。显式目标保留原模式,不擅自修产品代码。

AI & Automation 40 stars 0 forks Updated today MIT

Install

View on GitHub

Quality Score: 82/100

Stars 20%
54
Recency 20%
100
Frontmatter 20%
70
Documentation 15%
100
Issue Health 10%
50
License 10%
100
Description 5%
100

Skill Content

# cm-test — 分支影响分析与存量功能只读测试 执行前读取 `../../runtime/project-context.md`、`../../runtime/test-contract.md`、 `../../runtime/model-efficiency.md` 与 `../../runtime/logging.md`。使用 `--generate-cases` 或需要补反例时,追加读取 `../../runtime/steelman-review.md`;它只增强测试意图,不改变只读边界或测试完成条件。 需要复用 QA 纪律时读取相邻的 `../cm-qa-engineer/SKILL.md`,并强制使用其 `readonly` 模式。Codex 入口为 `$cm-test`;Claude Code 跨平台入口为 `/cm-test`,macOS/Linux 另有历史别名 `/cm:test`。 用户明确要求外部专家,或为本次测试任务开启 AUTO 时,按 `../../runtime/external-expert.md` 执行 `../external-expert/SKILL.md` 的任务路由。 测试执行、浏览器模拟和结果判定保持 LOCAL;复杂测试设计可 CONSULT,权威测试方法 可 VERIFY。外部只能产生候选用例和故障注入建议;纳入测试合同前仍按本 Skill 标记 来源并校验,外部声称的执行结果不得计入 PASS。 ## 用法 ```text $cm-test $cm-test {代码项目路径} $cm-test {代码项目路径} {功能描述} $cm-test {代码项目路径} {功能描述} --generate-cases $cm-test {代码项目路径} --specs {specs路径} --feature {N.feature} --all $cm-test {代码项目路径} --cases {用例文件路径} --browser $cm-test {代码项目路径} --explore {页面或用户流程} ``` ## 默认:分析当前分支 直接运行 `$cm-test`,以当前工作目录所属 Git 仓库根为项目;只给项目路径也一样。 没有功能描述、specs、cases 或模式时,走 `impact`,不用用户填写提交号或范围。 具体取数与输出按 [分支影响分析](references/branch-impact.md),仍经下方准入和共享控制器。 先读业务地图,再按固定提交核验改动、调用方、共用状态与相邻流程,列出回归重点。 impact 阶段只分析已提交代码,未提交修改单独提示;后续只运行项目已声明的本地单测覆盖率命令。 没有差异返回 `NO_CHANGES`;`ANALYZED/PARTIAL` 都不表示测试通过。 原 impact 完成后自动按 [单测覆盖率与补测](references/unit-coverage.md) 接续真实覆盖率检查。 用户说“补齐单测”则在同一任务继续;已有明确补测授权不再询问,不要求新的命令或提交号。 ## JS 只读准入 在创建报告目录、写日志、运行正式命令或启动浏览器之前,把已解析参数逐项传给: ```bash node "{CM_WORKFLOW_ROOT}/scripts/cm-test-entry.mjs" \ --skill-dir "{CM_WORKFLOW_ROOT}/skills/cm-test" --project "...

Details

Author
kingxiaozhe
Repository
kingxiaozhe/cm-workflow
Created
2 months ago
Last Updated
today
Language
JavaScript
License
MIT

Similar Skills

Semantically similar based on skill content — not just same category