1

我正在使用django-nose它来测量我的测试套件的覆盖率。
我按照这个文档来做到这一点。

使用标准配置运行良好,我成功覆盖了我的所有应用程序。

我会views在不安装新包的情况下从覆盖范围中排除目录,所以我尝试以--ignore-files这种方式使用参数:

NOSE_ARGS = [
    '--with-coverage',
    '--cover-package=apps.my_app',
    '--ignore-files=^views\\.'
]

我的项目结构是

+- root
|-- src
|--- main
|---- apps
|----- my_app
|------ views
|--- test
|---- main
|----- apps
|------ my_app
|------- views

我使用以下命令从项目根目录运行测试套件:

python src\main\manage.py test --noinput main

不幸的是它不能正常工作,我的意思是 django-nose 似乎忽略了这个选项,并且视图目录包含在覆盖范围内。

我错过了什么?

4

1 回答 1

2

您可以配置coverage.py 以从分析中排除文件,并从覆盖报告中排除文件。我已经使用 django-nose 成功完成了这项工作。

添加一个.coveragerc文件,在同一目录下,coverage.py 正在运行(您从中运行测试),如下所示 ->

[run]
omit = 
    my/folder/*


[report]
omit = 
    my/folder/*
于 2018-02-15T13:24:48.973 回答