🧪 评估框架¶
评估框架独立于单元测试。它通过渲染场景并与标准 PNG 比较来进行视觉回归测试。
📁 结构¶
evaluation/
├── cases/ # 场景输入 JSON 文件
├── expected/ # 标准 PNG 图片
├── output/ # 渲染的 PNG(生成的)
└── diffs/ # 失败时的差异图片
在 GitHub 上浏览:
evaluation/
🚀 运行评估¶
🔍 工作原理¶
flowchart TD
A[evaluation/cases/*.json] --> B[渲染场景为 PNG]
B --> C{与期望 PNG\n比较}
C -->|在容差内| D[通过]
C -->|超过容差| E[写入差异图片]
D --> F[JSON 报告\n+ 文本摘要]
E --> F
🆚 测试 vs 评估¶
| tests/ | evaluation/ | |
|---|---|---|
| 🏷️ 类型 | 单元测试 | 视觉回归 |
| 🛠️ 工具 | pytest | 内置运行器 |
| ✅ 检查 | 逻辑正确性 | 渲染正确性 |
| 📦 产物 | - | PNG 渲染 + 差异图 |