用途:面向 Python 应用的测试实践指南,核心是桩驱动 TDD(Stub-Driven TDD)与分层边界测试,帮助决定测什么、在哪一层测、如何组织测试。
主要能力:
- 桩驱动 TDD 工作流:Stub(用 pass 写函数签名)→ Test(为预期行为写测试)→ Implement(让测试通过)→ Refactor(清理代码)。
- 分层边界测试:按 Router → Service → Repository → Entity → Database 的边界测试,而非内部实现。实体层测领域逻辑、校验与转换(from_request、to_response、to_record);服务层测业务流程、错误处理与依赖编排;仓储层测 CRUD、查询逻辑与实体↔记录转换;路由层测请求校验、响应序列化与状态码。
- 示例模式:实体测试断言转换与业务逻辑;服务测试用 unittest.mock.Mock 桩化依赖并验证调用;仓储测试用内存 SQLite 测试库与 pytest fixture;路由测试用 fastapi.testclient.TestClient 断言状态码与响应体。
- 测试组织:tests/ 下分 unit(实体、服务)与 integration(仓储、端点),conftest.py 放共享 fixture。
- 参考文档:references/boundaries.md(各层完整示例)、references/mocking.md(Mock 策略、验证方法与反模式)、references/pytest.md(配置、fixture、marker、参数化与调试)。
使用方式:按上述工作流编写测试,测试置于组件边界;服务层用 Mock 隔离依赖,仓储层用真实测试数据库,路由层用 TestClient。
适用场景:Python 项目编写测试、决定测试范围、在组件边界测试、实现 TDD 流程。
限制:资料未提供安装命令、版本要求、收费与平台信息;示例依赖 pytest、unittest.mock、SQLAlchemy、FastAPI 等,具体环境配置暂未提供。