导入对象
>> pip install mock
>> pip install pytest-mock
下面对coverage命令参数进行简单介绍。
coverage命令共有10种参数形式,分别是:
- run:运行一个Python程序并收集运行数据;
- report:生成报告;
- html:把结果输出html格式;
- xml:把结果输出xml格式;
- annotate:运行一个Python程序并收集运行数据;
- erase:清楚之前coverage收集的数据;
- combine:合并coverage收集的数据;
- debug:获取调试信息;
- help:查看coverage帮助信息;
- coverage help动作或者coverage动作-help:查看指定动作的帮助信息。
coverage run py文件生测试的覆盖率
coverage report查看报告
pytest-cov是pytest的一个插件,其本质也是引用Python的coverage库,用来统计代码覆盖率。
pytest.ini 配置addopts = --cov=calculator --cov-report=html
此外如果想同时生成HTML格式的覆盖率报告,可以运行:1
# 搜集被测代码覆盖率信息,保存到 .coverage 文件中
$ coverage run 测试文件.py
# 生成覆盖率统计结果报告
$ coverage report
# 以HTML的形式生成覆盖率统计结果报告
$ coverage html
终端report里测试结果各参数含义:
- Stmts :代码总行数
- Miss:未执行代码行数
- Cover:代码覆盖率
report HTML中测试结果各参数含义:
- statements :代码总行数,不包含空行和注释行
- missing:未执行代码行数
- coverage:代码覆盖率
pytest --cov=calculator --cov-report=html tests/