问题标签 [python-coverage]

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 投票
6 回答
1192 浏览

python - 如何知道我的 Python 测试是否在覆盖模式下运行?

我正在使用 Travis CI 在持续集成上运行 Ned Batchelder 的覆盖率模块,但我只想运行集成测试并跳过功能性测试,因为它们花费的时间太长并且覆盖率测量不受它们的影响。

我为此创建了一个特殊的配置,但我想知道在 Python 脚本中是否有另一种方法可以知道代码是否由覆盖运行。

0 投票
2 回答
6200 浏览

python - 在 virtualenv 中运行覆盖

我最近偶然发现了在虚拟环境中运行覆盖率测量的一些问题。我不记得过去类似的问题,也无法在网上找到解决方案。

基本上,当我尝试在 virtualenv 中运行测试套件时,它工作正常。但是,当我尝试使用它时coverage,它会因为缺少所需的模块而失败。根据 StackOverflow 上的一些答案,我检查了我的脚本,发现它coverage使用不同的解释器,即使是从同一个virtualenv.

以下是如何重现它:

问题是:如何coverage与虚拟环境无缝协作?我可以在系统范围内更改sys.path或安装所需的模块,但必须有一种更简洁的方法。

0 投票
1 回答
531 浏览

python - 如何计算全球覆盖率?

我正在使用tox来测试我的python egg。我想知道覆盖范围

但问题是测试是使用python 2(2.6 和 2.7)和 python 3(3.3)执行的,有些行应该在 python 2 中执行,而其他行应该在 python 3 中执行,但这看起来像只计算执行的行使用 python 2(tox 中的最后一部分,py26-dj12)。你可以在这里看到这个:

https://coveralls.io/files/64922124#L33

这种方式通过不同的django版本...

有没有办法获得全球覆盖?

0 投票
1 回答
535 浏览

python - 在 python 中显示覆盖率的命令行选项

当我从终端使用鼻子显示覆盖范围的测试结果时,我得到错误和缺失的行,这些行实际上被覆盖了

$ python -m nose.core test_utils.py -s --with-coverage

怎么找不到test_utils?我站在同一个目录下!

0 投票
2 回答
2980 浏览

python - 单元测试的 Python 覆盖率

我已经为我的 python 代码编写了测试,并且想检查测试覆盖了多少 %,所以我决定使用 python 覆盖率。但是我在启动它时遇到了问题。我使用这个 bash 命令启动我的测试:

我的 python 程序在“files”目录中,而测试在“test”中,所以我无法以其他方式启动它。使用

引发错误。如何在我的情况下正确使用覆盖率?

0 投票
1 回答
807 浏览

python - Jinja2 模板的代码覆盖率

我有一个使用 Jinja2 作为模板引擎的 Pyramid Web 应用程序。它使用 Pyramid 测试助手以及 py.test 和覆盖插件进行测试。但覆盖仅适用于我的 Python 代码。有没有办法检查 Jinja 模板的覆盖范围?

由于 Jinja 被编译成 Python 代码,并且 Armin 设法在异常情况下给出准确的行号,我至少在理论上应该是可能的。任何提示将不胜感激。

0 投票
2 回答
940 浏览

python - 子表达式的python条件覆盖

我正在尝试找到一个 python 代码覆盖工具,它可以测量语句中是否覆盖了子表达式:

例如,我想看看以下示例中是否涵盖了 condition1/condition2/condtion3?

0 投票
1 回答
2434 浏览

python - 从 .coverage 文件生成 html 报告

我正在寻找一种方法来组合多个 .coverage 文件,然后生成一个 html 报告。目前,我使用以下命令仅从一个来源生成覆盖范围,并且工作正常:

现在我想首先将过程分成两部分:

  1. 生成覆盖率报告(.coverage 文件)
  2. 从 .coverage 文件生成 html 报告

第一步很清楚,与省略 html 部分之前的命令相同。然后我在很多地方看到过随便跑coverage html,包括python覆盖包网站。当我这样做时,我会获得一份控制台打印的报告,其中包含我的报道和以下内容

就像鼻子以某种方式干扰:

0 投票
2 回答
5767 浏览

django - 使用 django-jenkins 运行覆盖率测试

我有几个 Django 项目正在从事,我使用 Jenkins 进行持续集成。我已经安排并运行了一段时间,并且效果很好。

我希望能够生成自动测试覆盖率报告并让 Jenkins 处理它们。在我看来,django-jenkins是解决这个问题的方法,所以我安装了它并且coverage.

这是我的相关部分settings.py

现在,我可以运行了python manage.py jtest,它按预期工作。但是,如果我运行python manage.py jenkins,它会出错:

我使用标准的 DjangoTestCaseLiveServerTestCase类作为测试的基础。知道我在哪里出错了吗?该文档似乎暗示django_tests已被删除,但我找不到任何关于您现在如何运行 Django 测试的迹象。

我正在使用 Django 1.6.2。

0 投票
2 回答
5632 浏览

python - 如何在 Python 脚本的多次运行中获得组合代码覆盖率

我有一个 python 程序,它通过使用不同的输入运行多次,并将输出与参考结果进行比较来进行测试。

我想获得所有测试的代码覆盖率,所以我可以查看是否有额外的输入集我应该使用来获得完整的覆盖率。我已经查看了覆盖模块,但无法弄清楚如何让它做到这一点。

有什么线索吗?