用于覆盖率报告的nose2插件,包括子进程和多进程

nose2-cov的Python项目详细描述


此插件生成覆盖率报告。它还支持子流程的覆盖。

应通过NOSE2 COV或 通过覆盖的配置文件。

安装

使用pip安装:

pip install nose2-cov

注意

确保使用pip而不是easy_install,因为后者不能正确安装 子流程测量所需的init_cov_core.pth文件。

卸载

使用pip进行卸载:

pip uninstall nose2-cov
pip uninstall cov-core

注意

确保手动删除站点包目录中的init_cov_core.pth文件。

此文件在站点初始化期间启动子进程的覆盖范围集合(如果适用) 在python启动时。

用法

以下将报告主流程及其所有子流程的组合覆盖范围:

nose2 --with-cov testfoo

显示终端报告:

---------- coverage: platform linux2, python 2.7.1-final-0 -----------
Name      Stmts   Miss  Cover
-----------------------------
testfoo      17      9    47%

报告

可以为单个测试运行生成报告的任意组合。

可用的报告包括终端(显示或不显示缺少行号)、HTML、XML和 带注释的源代码。

不带行号的终端报告(默认):

nose2 --with-cov --cov-report term testfoo

---------- coverage: platform linux2, python 2.7.1-final-0 -----------
Name      Stmts   Miss  Cover
-----------------------------
testfoo      17      9    47%

带有行号的终端报告:

nose2 --with-cov --cov-report term-missing testfoo

---------- coverage: platform linux2, python 2.7.1-final-0 -----------
Name      Stmts   Miss  Cover   Missing
---------------------------------------
testfoo      17      9    47%   1-6, 9, 11, 13, 17, 19

剩下的三个报告输出到文件(当输出变成连续的 集成服务器):

nose2 --with-cov --cov-report html --cov-report xml --cov-report annotate testfoo

覆盖率数据文件

数据文件在测试开始时被删除,以确保每次测试运行都有干净的数据。

数据文件留在测试结束时,这样就可以使用普通的覆盖工具 检查一下。

覆盖率配置文件

这个插件提供了添加到nose2的一组干净的最小命令行选项。为了 进一步控制覆盖使用覆盖配置文件。

例如,如果测试包含在正在测量的目录树中,则测试可以是 如果需要,可通过使用.coveragerc文件并设置“忽略”选项来排除:

nose2 --with-cov --cov-config .coveragerc testfoo

.coveragerc文件包含文件globs:

[run]
omit = tests/*

有关详细信息,请参阅coverage config file文档。

注意,这个插件控制一些选项,并且在配置文件中设置选项将没有 效果。其中包括指定要测量的源(源选项)和所有数据文件处理 (数据文件和并行选项)。

限制

对于子流程度量,环境变量必须使其从主流程到 子流程。子进程使用的python必须安装nose2 cov。子进程必须 进行正常的站点初始化,以便能够检测到环境变量并覆盖 起动。

致谢

虽然这个插件是从头开始构建的,但它受到所做工作的影响 Pytest Coverage(Ross Lawley,James Mills,Holger Krekel)和Nose Coverage(Jason Pellerin)上 其他覆盖插件。

Ned Batchelder的覆盖率及其合并并行运行的覆盖率结果的能力。

Holger Krekel for Pytest及其分布式测试支持。

杰森·佩林的鼻子。

UnitTest2的MichaelFoord。

毫无疑问,其他人也为这些工具做出了贡献。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
在Java中从本地文件系统导入文件   spring boot如何在Java SpringBoot项目中集成Olingo(Odata)   java查找连续数组中缺少的第k个元素(超过时间限制)   java为什么在mySql中插入1/2行时会得到2/4行   java不能在静态上下文中使用它   File Observer方法的java My onEvent()部分不起作用   java Netty NioSocketChannel在多线程写入时收到中断消息   java将文件夹与父文件夹一起复制   java我的TictaToe代码出了什么问题?如何检查已采取的措施?   java Swing JTable更新   java如何将cordinates查找为int   如何使用selenium和java在firefox中打开新的空选项卡   java Gradle构建输出Jar未运行   java没有GET/WEBINF/jsp/login的映射。jsp