用途:为 Python 3.9+ 项目编写或审查测试套件提供规范,覆盖 pytest 配置、fixture 管理与 TDD 实践。
主要能力:按 AAA(Arrange-Act-Assert)模式组织单元测试与异常校验;使用请求级 fixture、参数化与边界 mock 隔离外部依赖;用 pytest-asyncio 标记和事件循环管理验证异步逻辑;通过 pytest-mock 或自定义 monkeypatch 处理外部依赖;配置项目级覆盖率阈值与报告。模块包括单元测试、fixture 与 mock、异步测试、测试基础设施、测试工作流和测试质量标准。退出标准:测试遵循 AAA 模式、覆盖率不低于项目 80% 下限、测试相互独立不依赖执行顺序、fixture 作用域划分合理以避免副作用、mock 仅限外部系统边界。
使用方式:先安装依赖 pip install pytest pytest-cov pytest-asyncio pytest-mock。在 pyproject.toml 中添加配置:[tool.pytest.ini_options]、testpaths = ["tests"]、addopts = "--cov=src"。运行 pytest 确认能发现匹配 test_*.py 的文件。异步测试需确认已安装 pytest-asyncio,并使用 @pytest.mark.asyncio 装饰器或相应自动模式配置。
适用场景:为 Python 项目构建单元与集成测试、隔离外部依赖、验证异步逻辑、设置覆盖率报告。
限制:不适用于评估测试质量,此时应改用 pensive:test-review;也不适用于基础设施测试配置,此时应改用 leyline:pytest-config。
故障排查:测试发现失败时检查文件名是否符合 test_*.py,可用 pytest --collect-only 调试发现路径;导入错误时确保本地源码目录在路径中,通常以可编辑模式安装 pip install -e .;异步失败时确认 pytest-asyncio 已安装且正确使用装饰器或自动模式。