第 5 章:综合项目——给记账本加质量保障¶
📋 本章概览¶
| 项目 | 内容 |
|---|---|
| 学习时长 | 50 分钟 |
| 核心概念 | 回归测试、临时目录、CI 验收、质量清单 |
| 核心比喻 | 把修理流程变成每次都能执行的出厂检验 |
| 实践任务 | 为记账本建立自动化质量保障 |
| 难度等级 | ★★★★☆ |
给 Python 教程的记账本增加一套最小质量保障:
验收清单¶
- 金额计算有正常输入测试
- 空记录不会崩溃
- 分类统计有至少两组边界测试
- JSON 文件不存在时有清晰错误提示
- 文件读写测试使用临时目录,不修改真实用户文件
- CI 在每次推送和 Pull Request 时运行测试
推荐工作顺序¶
- 先写一个会失败的测试,明确预期行为
- 用最小修改让测试通过
- 重构重复代码
- 再运行全部测试
- 提交一条只包含这一组变化的 Git commit
完成后,你不只是“会修 bug”,而是拥有了一条从发现问题、复现问题到防止问题再次出现的工作流。
✅ 验证步骤¶
- 本地运行全部测试,确认正常输入和边界输入都通过。
- 使用临时目录测试文件读写,不修改真实用户文件。
- 推送分支并确认 CI 通过。
- 故意引入一个失败断言,确认 CI 能阻止错误合并。
📝 本章总结¶
- 调试告诉你问题在哪里,测试帮助你防止问题回来。
- 质量保障需要覆盖功能、边界、文件和持续集成。
- 每次修复都应留下可重复的验证证据。
✏️ 课后练习¶
- 增加测试覆盖率报告。
- 为命令行交互层设计一组可自动执行的验收测试。
🔮 学完之后¶
你可以把相同的工作流迁移到 C、SQL、Web 或 AI 项目中。