6

我正在开发一个包含一些测试用例的 module1。我有另一个模块2,它可以运行这些测试用例并生成覆盖范围。目前 .coverage 文件夹是在调用 module2 的当前工作目录中生成的。有没有办法指定覆盖的文件夹路径以将此 .coverage 转储到指定的路径中?

4

2 回答 2

4

似乎从命令行没有选项可以做到这一点。但是使用配置文件可以做到这一点。

在配置文件中保留以下行。

[跑]

data_file = < .coverage 应该存储的路径 >

然后运行:

覆盖运行<脚本>(如果未指定配置文件,它会在运行覆盖时在同一文件夹中查找.coveragerc。如果这也不可用,则使用默认值)

或者

coverage run --rcfile <配置文件名> <脚本名>

于 2016-08-08T09:09:09.887 回答
0

有几种方法可以做到这一点,具体取决于您运行测试的方式。

  • 对于 xml 报告模式,使用coverage xml -o <<your_file>>
  • 对于 html 报告模式,使用coverage html -d <<your_output_directory>>
  • 要使用覆盖配置文件,请使用覆盖 xml --rcfile=<<your_config_file>>覆盖 html --rcfile=<<your_config_file>>,然后使用覆盖配置选项设置适当的路径

如果您通过其他一些工具(例如鼻子)运行覆盖,最后一个选项(配置文件)特别有用。通常,测试运行器只会给你最少的选项集,而配置文件给你更多的控制权。

希望这可以帮助!

于 2015-07-10T11:29:15.683 回答