用途:该技能在用户提出“编写 pytest 测试”“设置 pytest 最佳实践”“配置 pytest”“编写 fixture”等需求时触发,提供基于官方文档的测试编写与配置指导。
主要能力:涵盖项目布局(src 布局、tests 在应用包外)、测试发现约定(test_.py、test.py、test 前缀函数、Test 前缀类)、断言写法(普通 assert、pytest.approx 浮点比较、pytest.raises 异常断言)、fixture(基础、yield 清理、scope 选择、工厂模式、conftest.py 放置)、参数化(pytest.mark.parametrize、pytest.param、参数化 fixture)、marker(注册自定义 marker、--strict-markers)、pyproject.toml 配置、跳过与预期失败(skipif、xfail)、monkeypatch 补丁、tmp_path 临时文件。
必要用法:推荐 pyproject.toml 中设置 addopts=["--import-mode=importlib"]、testpaths、markers 等;以可编辑模式安装包:pip install -e .;测试函数不得返回布尔值;简单补丁优先用 monkeypatch;临时文件用 tmp_path。
适用场景:编写和维护 Python 测试套件、统一团队测试规范、配置 pytest 严格模式与标记。
限制:资料未提供具体版本兼容性、性能数据或与其他测试框架的对比;部分命令与配置示例以官方文档结构为准,实际使用需结合项目情况调整。