代码覆盖率不适用于PyDev

时间:2015-12-26 11:19:05

标签: code-coverage pydev coverage.py

首先,抱歉再次询问。我在这个主题上发现了一些帖子,但没有一个建议适合我。结果众所周知:PyDev总是报告"文件没有统计数据"。

在以前的安装(Linux和Windows)中,我看到了PyDev homepage中所述的工作。

这是我的安装:

  • Ubuntu 15.10
  • Eclipse Mars.1
  • PyDev 4.4.0.201510052309
  • python 3.4
  • 覆盖率4.0.3(位于/usr/local/lib/python3.4/dist-packages中)

在Eclipse / PyDev中显示Coverage视图,选择了基本程序文件夹,并且"启用新启动的代码覆盖率"检查。无论何时我运行代码(无论是单元测试还是正常运行),覆盖窗口都显示空表,或者如果选择了文件,则显示上述消息。

路径(从/ home / username ...开始)不包含任何空格。

我试图将PyUnit的详细程度设置为9.虽然控制台有更多输出,但覆盖率统计数据仍为空。

有人还有什么想法吗?我在这种情况下是否遗漏了什么?

感谢您的帮助。

克里斯

编辑: .coverage文件的路径由详细的PyUnit控制台输出报告。这个文件存在,它看起来像这样(我刚刚删除了路径,但它是正确的):

!coverage.py:这是一种私人格式,请勿直接阅读!{" lines":{" / home / ... / .... py& #34;:[5,7,8,9,12,14,15,16,17,18,19,21,22,25,26,27,29,30,31,32,33,34,35 ,39,40,42,43]," / home / ... / .... py":[5,38,7,29,9,42,11,12,13,15 ,17,14,19,40,21,23,25,27,10,31]," / home / ... / .... py":[32,33,34,35 ,36,5,7,8,9,39,12,15,23,26,27,37,30,31]}}

1 个答案:

答案 0 :(得分:3)

问题是coverage的版本,据说必须小于v4。用户saaj在对this question的回答中写道,用

完成安装
sudo pip install "coverage < 4.0.0"

修复了问题。所以这是我的安装:

  • Python 3.4
  • PyDev 4.4
  • 报道3.7.1

这个组合工作正常。

更新:我现在(2019年1月)再次检查它并确认当前版本的工具可以正常工作:

  • Python 3.5
  • PyDev 7.0.3
  • 报道4.5.2

因此,不再需要调用特定版本的覆盖范围,如上所示。