问题标签 [coverage.py]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2171 浏览

python - Python:运行覆盖范围的鼻子测试时出现 AssertionError

我对 python 测试相当熟悉,所以这可能是我做错了..

当我运行我的测试时,测试运行器工作正常并且覆盖范围也......但在两者之间我得到一个断言错误:

为了让事情变得更加困难,我正在尝试测试一个命令行实用程序。这意味着我必须告诉覆盖范围以覆盖子流程调用。

我想我让这部分工作了,因为覆盖率现在报告正在运行的脚本的覆盖率百分比。但是由于我得到了覆盖工作,所以我无法摆脱 AssertionError。

一些帮助理解出了什么问题将不胜感激。我所有的代码都可以在 github 上找到:

快速运行:

谢谢

更新

我在另一台计算机上运行了测试,得到了相同的 AssertionError .. 加上一个新的 TypeError。测试再次正确运行,即使出现这些错误,覆盖率似乎也能正常工作。

0 投票
2 回答
1296 浏览

python - coverage.py 的 setuptools 命令

为 setuptools 创建使用coverage.py生成代码覆盖率报告的命令的最佳方法是什么?

0 投票
1 回答
70 浏览

coverage.py - 为什么“coverage.py run -a”不总是增加我的代码覆盖率?

我有一个 GUI 应用程序,我试图确定哪些正在使用,哪些没有。我有许多必须手动运行的测试套件来测试用户界面部分。有时我用“coverage.py run file_name -a”运行同一个文件几次,每次都做不同的动作来检查不同的界面工具。我希望每次使用 -a 参数运行时,我只能通过 coverage.py增加代码覆盖的行数(至少除非拉入新文件)。但是,有时它会在额外运行后提供较低的代码覆盖率——这可能是什么原因造成的?

我没有在运行之间编辑源代码,据我所知没有新文件被拉入。我正在使用coverage.py 3.5.1 版。

0 投票
2 回答
1279 浏览

python - 'python setup.py nosetests' 报告包的 __init__.py 没有被测试覆盖

当我测试https://bitbucket.org/petar/beam_integrals时,python setup.py nosetests我得到了96% 的覆盖率

但是,如果我测试相同的代码,nosetests我会得到完全覆盖

似乎python setup.py nosetests没有正确报告beam_integrals模块的测试覆盖率。

此问题已在以下位置得到验证:

  1. 我们的持续集成服务器运行 Ubuntu 10.04 Server 32bit
  2. 新创建的 Rackspace 云服务器,运行 Ubuntu 12.04 Server 64 位,设置如下:

    /li>
0 投票
2 回答
1286 浏览

python - 更改 Ned Batchelder 的覆盖工具的默认 python 版本

标题几乎说明了这一点。我在将unittestpython 从 python 2.5 更改为 2.7 时遇到问题。当我用 python 运行我的测试脚本时

它工作正常。但是当我尝试使用覆盖工具时

它崩溃说这assertRaisesRegexp不是我的子类的属性TestCase。我发现这是因为覆盖工具使用的是 python 2.5 并且unittest.TestCase.assertRaisesRegexp在 2.5 中不存在。

无论如何,有人可以告诉我如何更改覆盖使用的 python 吗?

编辑:用于覆盖的彩蛋在 /Library/Python/2.5/site-packages 中。这有关系吗?

0 投票
2 回答
6655 浏览

python - 如何安装 python 的覆盖模块并在 Windows 的命令行中使用它

我想学习如何使用 python 的 coverage.py 模块来检查我的代码的覆盖模式。我尝试从各种来源阅读有关该工具的信息,最后使用“pip”实用程序将其安装在我的 Windows 7 机器上。安装后,覆盖模块安装在 C:\Python27\Lib\site-packages 中。

现在,我正在阅读有关如何从该页面使用它的说明:作者的安装说明。我按照本页给出的安装说明进行操作。但是,安装后,我不确定如何从命令行使用该工具?根据作者的说法,在 pip install 该工具之后,应该可以调用该命令

并期望看到一些输出。但是,当我运行此命令时,我得到command not found error。根据我的说法,这是预期的行为,因为覆盖只是另一个 python 模块(即具有 .py 扩展名),而不是独立的可执行文件。所以,我不知道它如何以独立的方式运行。

请有人提供该工具安装的确切详细信息。我只需要安装帮助。我将从nedbatchelder.com 的“Coverage command line usage”文章中了解 CMD 的用法。

0 投票
2 回答
1947 浏览

python - 启用 HTML 报告时禁用对 STDOUT 的鼻子覆盖率报告?

我正在使用带有覆盖插件的鼻子(通过django-nose)来检查我的 Django 项目的测试覆盖率。

我已将鼻子配置为在每次测试运行时生成 HTML 覆盖率报告:

现在,我想禁用每次测试运行后显示的纯文本覆盖率报告;HTML 功能更强大,而且格式错误的长表格让人很难看到实际的测试输出。似乎也nosetests没有coverage这样的选择,或者我只是找不到?

0 投票
1 回答
1082 浏览

python - 无法在 PyDev 中使用 Coverage,“文件没有统计信息”

我无法让 Coverage 与 PyDev 一起工作。我运行的每个文件都显示:“文件没有统计信息。”

我按照说明检查了“为新启动启用代码覆盖率”,然后将文件夹拖到“代码覆盖率”窗口进行分析。

我已经成功安装了覆盖。之后,我刷新了我的 Python 解释器设置,其中自动显示了覆盖文件夹。

我还尝试将覆盖文件夹添加到我项目的外部库中。也没用。。。

在此先感谢您提供任何可能引导我朝着正确方向前进的提示。

  • 覆盖版本 3.5.2(也尝试了推荐的 3.4 无济于事)
  • PyDev 版本:2.6.0
  • Eclipse 版本:3.7.2
0 投票
3 回答
11609 浏览

python - 如何从coverage.py中排除文件?

我使用nosetestcoverage.py插件。是否有可能从覆盖率报告中排除整个文件或文件夹?我的用例是在我的项目文件夹中有一个外部库,显然我的测试套件没有涵盖。

0 投票
1 回答
343 浏览

python - 如何使用coverage.py在Django-Python中实现Ruby-Rails之类的覆盖率报告?

我们使用世界上著名且可能唯一的解决方案进行报道报告,pythoncoverage.py

现在,我们实现的coverage.py是: 在此处输入图像描述

我们可以实现的目标ruby-rails是: 在此处输入图像描述

所以,我的问题是如何获得更详细的覆盖率报告coverage.py

[或python django世界中的任何其他工具]

笔记:

  • coverage run manage.py test --settings=project.test_settings
  • 通过以下方式生成报告coverage html
  • 应该/我可以coverage在生成报告时传递额外的参数吗?