Files
playbook/test/README.md
T

71 lines
2.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 🧪 Playbook 测试套件
本目录包含 Playbook 项目的可执行行为测试。
## 📋 目录结构
```txt
test/
├── README.md # 本文件:测试文档
├── test_commit_message_policy.py # 提交信息校验器和 CI 委托行为
├── test_gitea_fetch_ci_logs.py # Gitea CI 日志采集行为
├── test_main_loop_cli.py # ticket 调度、隔离、证据与集成测试
├── test_main_loop_scheduler.py # 全局调度器和依赖图行为
├── test_playbook.py # snapshot/subtree 参数化完整部署测试
├── test_thirdparty_skills_pipeline.py # thirdparty skills 流水线配置与同步行为
├── test_tsl_api_framework.py # TSL API 索引和 Framework Profile 行为
├── test_tsl_playbook_sync.py # TSL Playbook 构建与同步行为
└── integration/ # 文档完整性检查
└── check_doc_links.py # 本地 Markdown 链接目标检查
```
## 🚀 快速开始
```bash
# 进入 playbook 根目录
cd /path/to/playbook
# 运行 Python 测试(test/ 下的 test_*.py
python -X utf8 -B -m unittest discover -s test -p "test_*.py" -v
# 文档链接检查
python test/integration/check_doc_links.py
```
## 🧭 CI 自动化测试
测试套件通过 Gitea Actions 自动运行(见 `.gitea/workflows/checks.yml`
`🔎 规范检查 + 全量测试` job):
- **触发方式**`workflow_run`——「🧰 准备环境」(`prepare.yml`)完成后触发。
Prepare 监听 `push:main``pull_request``workflow_dispatch`;推送到 main、
对 main 开 PR 或手动运行 Prepare 都会经 Prepare 传导到测试。每日 `schedule`
只属于 thirdparty updater,不会触发这套提交验证。
- **运行平台**standard-ubuntu-22
- **注**:同一 job 先校验 commit message,再运行全量测试。
## 📚 测试详解
### 1. Playbook 部署测试 (`test_playbook.py`)
使用同一个完整 `playbook.toml` 参数化验证:
- snapshot 与 subtree 两种安装模式
- rules、memory bank、prompts、standards 和 skills 同步
- 重复执行的幂等性与自定义文件保留
### 2. 主循环测试 (`test_main_loop_cli.py`)
使用临时 Git 仓库验证 ticket 队列、串行与 worktree 隔离、并发 claim、heartbeat/reclaim、
验证与 review 证据绑定,以及 ticket/feature 两级集成。
### 3. TSL 和同步行为测试
- `test_tsl_api_framework.py`:验证 API 索引、class 查询和 Framework Profile 行为
- `test_tsl_playbook_sync.py`:验证 TSL Playbook 构建和同步文件边界
- `test_thirdparty_skills_pipeline.py`:验证 thirdparty manifest、workflow 和同步产物
### 4. 文档链接检查 (`integration/`)
扫描仓库中的 Markdown 文件,确保本地文档引用的目标路径有效。