21

你怎么能unittest2一起coverage.py工作?

理论上类似

coverage run unit2 discover 

应该可以工作,但它目前只是出错了。

如果您是nose用户,则相当于nosetests --with-coverage.

4

4 回答 4

47

尝试:

coverage run -m unittest discover

为我工作。

于 2012-07-02T21:25:07.873 回答
5

这必须特定于您的安装,因为它对我来说很好用

coverage run unit2 discover

然后生成覆盖信息

coverage html

生成 HTML 报告(几种报告格式之一),以及

open htmlcov/index.html

查看结果。

(回答这个问题是因为这是“unittest2 覆盖率”的热门话题,我不希望人们因缺乏任何答案而推迟。)

于 2011-02-06T21:54:09.880 回答
3

我正在运行 Windows 并遇到了同样的问题。

$ coverage run unit2 discover
No file to run: 'unit2'

我怀疑这与系统路径和 python 路径在各种操作系统上的处理方式不同有关(我猜 Andrew 正在运行 linux?)。无论如何,coverage run采用-m允许您运行模块而不是脚本的选项。这就是我使用的:

coverage run -m unittest2 discover
于 2011-12-05T15:47:14.127 回答
1

如果您安装了多个版本coverage,请使用

coverage2 run -m unittest discover

或者

coverage3 run -m unittest discover

指定你要运行哪一个。

于 2015-01-24T03:04:31.777 回答