Python库-coverage测试覆盖率

Coverage.py 是用于测量Python程序代码覆盖率的工具。它 监视程序,注意代码的哪些部分已执行,然后 分析源以识别可以执行但未执行的代码。

覆盖率测量通常用于衡量测试的有效性。它 可以显示测试正在执行代码的哪些部分,以及哪些部分是 不。

安装 coverage.py

复制代码
$ python3 -m pip install coverage

运行测试

用于运行测试套件并收集数据。

coverage run

如果测试运行程序命令以"python"开头,只需替换首字母 "python"与"coverage run"。

python something.py成为coverage run something.py
python -m amodule成为coverage run -m amodule

如果使用的

如果您通常使用:

复制代码
$ pytest arg1 arg2 arg3

可以使用以下方法在覆盖率下运行测试:

复制代码
$ coverage run -m pytest arg1 arg2 arg3

指定范围

将覆盖率测量限制为当前目录中的代码,以及 查找根本没有执行的文件,将参数添加到 您的覆盖范围命令行。

--source=.

复制代码
coverage run --source=dir1,dir2 my_program.py arg1 arg2
coverage run --source=dir1,dir2 -m packagename.modulename arg1 arg2

分支覆盖率

coverage默认收集行覆盖率,如果想收集分支覆盖率,可以带参数--branch

可以看到views文件有12个分支,覆盖率95%

输出测试报告

coverage report

该标志还显示缺少语句的行号:-m

复制代码
$coverage report -m
复制代码
coverage report -m 文件名 文件名

可只收集指定的文件。

输出html测试报告

coverage html

相关推荐
Dr.kangder8 天前
嵌入式软件接口测试:从理论到实践的全面指南
测试工具·架构·嵌入式·测试覆盖率
Dr.kangder9 天前
嵌入式软件单元测试:从理论到实践
架构·单元测试·嵌入式·测试覆盖率
一孤程25 天前
AI辅助测试用例生成实战——用大模型把测试设计效率提升300%
人工智能·测试工具·ai·aigc·测试用例·测试·测试覆盖率
码哥字节1 个月前
为什么AI生成的单测,覆盖率看起来很高但上线还是出Bug?
测试覆盖率·claude code·ai单元测试
bIo7lyA8v2 个月前
算法验证中的测试覆盖率与边界设计的技术8
测试覆盖率
好名字更能让你们记住我2 个月前
【接口自动化测试】博客系统接口自动化测试报告
python·功能测试·自动化·接口测试·接口自动化·测试覆盖率
测试员周周3 个月前
【Appium 系列】第20节-测试项目结构设计 — 从脚本到工程
人工智能·数据挖掘·回归·单元测试·appium·测试用例·测试覆盖率
测试员周周3 个月前
【Appium 系列】第15节-视觉测试 — 截图、对比、视觉回归
人工智能·python·数据挖掘·回归·appium·测试用例·测试覆盖率
lazybird743 个月前
主路径覆盖(Prime Path Coverage)
测试覆盖率
Mack.Jason3 个月前
软件测试中的计划,方案和统筹
功能测试·测试覆盖率