mcpField
P
pytest-coverage

pytest-coverage

github.com/github测试与质量40.5k12.9k 次安装今天更新
代码仓库

关于 pytest-coverage

这项技能通过 pytest 覆盖率报告查找未测试的源码行,并指导补充测试,直至行覆盖完整。适用于检查整个项目或特定模块覆盖率的开发者。

主要功能

  1. 01生成注释式覆盖率报告
  2. 02指定模块或测试文件
  3. 03定位未覆盖的源码行
  4. 04持续运行测试直至覆盖完整

适用场景

  1. 01查找项目中未测试的代码行
  2. 02检查单个模块的覆盖率
  3. 03为未覆盖代码补充测试

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/github/awesome-copilot --skill pytest-coverage

安装后在 Claude Code 中输入/pytest-coverage确认已加载。

详细介绍

目标是让测试覆盖所有代码行。

使用以下命令生成覆盖率报告:

pytest --cov --cov-report=annotate:cov_annotate

如果你要检查特定模块的覆盖率,可以这样指定:

pytest --cov=your_module_name --cov-report=annotate:cov_annotate

你也可以指定要运行的特定测试,例如:

pytest tests/test_your_module.py --cov=your_module_name --cov-report=annotate:cov_annotate

打开 cov_annotate 目录以查看带注释的源代码。 每个源文件都会有一个对应的文件。如果某个文件的源代码覆盖率为 100%,说明所有行都已被测试覆盖,因此你不需要打开该文件。

对于每个测试覆盖率低于 100% 的文件,在 cov_annotate 中找到对应的文件并查看该文件。

如果某一行以 !(感叹号)开头,说明该行未被测试覆盖。 添加测试以覆盖缺失的行。

持续运行测试并改进覆盖率,直到所有行都被覆盖。

评论

支持 Markdown