tboost
v0.1.1
Published
Requirement docs -> test points -> test cases pipeline. Installs AI agent commands (CodeBuddy, Claude Code, Cursor, Codex, Copilot, Gemini...) that generate test assets from requirement documents.
Maintainers
Readme
tboost
原名 Test Harness CLI。
把需求文档变成测试资产(测试点思维导图 → 测试用例)的 AI 流水线 CLI。
借鉴 OpenSpec 的架构:schema 驱动产物依赖图 + 指令驱动生成 + 目录即数据库。核心思路是——
测试点思维导图和测试用例的书写风格因公司而异,因此先生成风格档案,再按风格生成测试点、测试用例。每一步都有独立指令,产物落盘即状态,支持单步重跑与人工确认门。
特性
- 风格优先:
/tboost:discover-style从样例/对话中提取公司测试风格(导图层级、用例字段、编号规则、优先级枚举、粒度),沉淀为knowledge/styles/<name>.yaml,作为所有生成阶段的规则源 - 混合输入:需求文档支持 docx / markdown / xlsx 混用
- 分阶段指令:analyze-reqs → test-points → test-cases 各自独立,可单步重跑;
/tboost:propose一键走完 - 人工确认门:测试点思维导图必须经人工确认后才能生成用例(
tboost confirm) - 多 agent 适配:init 时选择 AI 工具,按该工具的约定放置命令与 skill
- 目录即数据库:
runs/<batch-id>/落盘即状态,无需额外数据库 - 多格式产物:思维导图输出
json + Freemind(.mm) + Markdown,用例输出json + xlsx
安装
需要 Node.js ≥ 18。
npm install -g tboost快速开始
在项目目录中运行:
tboost init交互式选择项目使用的 AI 工具(CodeBuddy / Claude Code / Cursor / OpenAI Codex / GitHub Copilot / Gemini CLI / Windsurf)。CLI 会自动:
- 在对应 agent 配置目录中生成 6 个 slash 命令文件(如
.codebuddy/commands/tboost/*.md→/tboost:test-points) - 安装 6 个指令 skill(如
.codebuddy/skills/tboost-*/SKILL.md(6 个指令各一个)) - 初始化工作目录:
runs/、knowledge/styles/、archive/
非交互式:
tboost init --agent codebuddy完成后在 agent 中重载会话,即可开始:
/tboost:discover-style acme-banking --from 测试点样例.docx 用例样例.xlsx # 1. 先探索风格
/tboost:propose --docs 需求v2.docx 需求补充.md --style acme-banking # 2. 一键走完全流程/tboost:propose 会在测试点生成后自动暂停等待人工确认。之后也可以分步执行、随时单步重跑:
/tboost:analyze-reqs <batch-id> --docs 需求文档.md
/tboost:test-points <batch-id> --style acme-banking
/tboost:test-cases <batch-id> --style acme-banking
/tboost:archive <batch-id>Agent 支持
| Agent | 配置目录 | 命令调用 |
|---|---|---|
| CodeBuddy | .codebuddy/commands/tboost/*.md | /tboost:test-points |
| Claude Code | .claude/commands/tboost-*.md | /tboost-test-points |
| Cursor | .cursor/commands/tboost-*.md | /tboost-test-points |
| OpenAI Codex | .codex/commands/tboost-*.md | /tboost-test-points |
| GitHub Copilot | .github/commands/tboost-*.md | /tboost-test-points |
| Gemini CLI | .gemini/commands/tboost-*.md | $tboost-test-points |
| Windsurf | .windsurf/commands/tboost-*.md | /tboost-test-points |
流水线
knowledge/styles/<name>.yaml # 风格档案(Phase 0,可复用)
│
▼
requirements.json # Phase 1: 需求结构化 + 缺口/歧义分析
│ (需人工确认)
▼
test_points.{json,mm,md} # Phase 2: 测试点思维导图(按风格)
│ (强制人工确认门)
▼
test_cases.{json,xlsx} # Phase 3: 测试用例(按风格字段/编号/优先级)状态检查:
tboost status # 列出所有批次
tboost status --batch <id> --json # 某批次的产物依赖状态(JSON,供 AI 读取)| 产物 | 文件 | 依赖 | 需确认 |
|---|---|---|---|
| requirements | requirements.json | — | ✅ |
| test_points | test_points.json / .mm / .md | requirements | ✅(强制) |
| test_cases | test_cases.json / .xlsx | test_points | 软确认 |
CLI 命令
tboost init [--agent <id>] [--force] 安装命令与 skill(交互选择 agent)
tboost update [--agent <id>] 重新生成已安装的模板
tboost status [--batch <id>] [--json] 查看批次/全部状态
tboost init-batch <batch-id> 创建空批次
tboost confirm --batch <id> --artifact <name>
将产物标记为人工已确认
tboost archive <batch-id> [--force] 归档批次到 archive/YYYY-MM-DD-<batch>
tboost style-list 列出风格档案
tboost style-show <name> 打印风格档案
tboost version / help目录结构
runs/<batch-id>/ 批次产物(目录即数据库)
requirements.json
test_points.json|.mm|.md
test_cases.json|.xlsx
.harness/<artifact>.confirmed 人工确认标记
knowledge/styles/ 风格档案(<name>.yaml)
archive/ 已归档批次
.harness-agent.json 记录 init 选择的 agent(供 update 用)开发
git clone <repo-url>
cd test-harness
npm link # 本地全局安装(或 npm install -g .)
tboost init --agent codebuddy # 在任意项目里测试发布
npm login
npm publish # 发布到 npm(若开 2FA,按提示输入 OTP)目录说明
src/ npm CLI 源码(零依赖)
cli.js 命令路由
init.js tboost init / update
agents.js agent 适配表
state.js 批次状态(目录即数据库)
status.js status/confirm/archive/style 命令
templates/ slash 命令与 skill 模板(纯 markdown)
bin/tboost.js / harness.js(兼容别名) npm bin 入口
harness/ 早期本地 Python 骨架(可选参考实现,非主推)后续规划
/tboost:automate:基于测试用例生成 pytest 自动化代码(产物链已预留扩展位)- 更多产物格式(xmind、TestRail 导入模板等)
