关于 write-python-tests
write-python-tests 是编写 Python 测试的技能,依据项目源码和既有惯例指导测试方案。它涵盖测试类型选择、边界情况验证,以及使用 pytest、nox 和 mise 进行针对性检查。
主要功能
- 01检查项目测试惯例
- 02选择 doctest 或专用测试
- 03覆盖边界与失败情况
- 04运行针对性 pytest 检查
- 05使用 nox 和 mise 验证
适用场景
- 01为私有行为添加测试
- 02测试无效输入与回归问题
- 03验证范围明确的 Python 改动
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ liblaf/ skills --skill write-python-tests安装后在 Claude Code 中输入/write-python-tests确认已加载。
附带文件agents/openai.yaml
详细介绍
编写 Python 测试
指南
- 源代码是事实依据。
- 编辑前检查
pyproject.toml、noxfile.py、.config/mise/、附近的测试以及tests/conftest.py。 - 对于简洁、确定、面向用户且适合作为示例的情况,优先在公开文档字符串中编写 doctest。
- 对于私有行为、较长的设置过程、夹具、参数化矩阵、monkeypatch、可选依赖、警告、异常、回归或不稳定输出,使用
tests/。 - 通过可观察的断言覆盖成功路径、边界情况、无效输入、预期失败和回归。
- 将专用测试文件分组,保持小巧且专注;除非专用测试覆盖额外风险,否则避免重复编写 doctest。
- 将现有文档、文档字符串、测试和示例视为不完全可靠的参考。
验证
- 从范围最小的相关目标开始。
- 对目标测试和 doctest 运行
uv run pytest ...。 - 运行
uv run nox执行完整测试矩阵。 - 运行
mise run lint;如果采用更窄范围的 lint 检查更稳妥,则运行mise run lint:python。 - 将无关的 lint 或环境故障与本次更改区分开,并明确指出,不要默默绕过。
评论
支持 Markdown