【问题标题】:Exclude system paths from django_coverage从 django_coverage 中排除系统路径
【发布时间】:2010-11-16 14:02:15
【问题描述】:

我正在使用命令test_coverage 在项目上运行 django_coverage。它正在工作,但它包含在/usr/local/lib/python2.6/dist-packages 的输出和最终计算代码中。我对了解这些模块的覆盖率不感兴趣,只对我的项目的测试覆盖率感兴趣。我在django_coverage documentation on BitBucket 中看到有一个COVERAGE_PATH_EXCLUDES,但这似乎只适用于项目的子目录,而不适用于绝对系统路径。另外,我看到COVERAGE_MODULE_EXCLUDES 的默认设置是排除任何带有“django”的导入,但我仍然得到/usr/local/lib/python2.6/dist-packages/django 的输出。

关于如何解决这个问题的任何想法?

【问题讨论】:

    标签: python django unit-testing tdd django-apps


    【解决方案1】:

    COVERAGE_PATH_EXCLUDES 中是否列出了“django”?我有一个类似的设置(django 1.1.2,python 2.6)在我的测试覆盖结果中看不到任何 django 包的输出。您可以发布您用于排除项的内容吗?

    【讨论】:

    • 在我的设置文件中我有COVERAGE_PATH_EXCLUDES = ('django',)
    • 抱歉,变量错误。查看 COVERAGE_MODULE_EXCLUDES。这是我正在使用的,COVERAGE_MODULE_EXCLUDES = [ 'tests$', 'settings$', 'urls$', 'common.views.test', 'init', 'django' ]
    【解决方案2】:

    我没有使用 django,所以我无法确认这一点,但您是否有可能修改了原始代码设置文件,而不是按照步骤 3 中的说明将设置包含在您自己的设置中(来自下面的自述文件摘录):

    作为 Django 应用安装

    1. 将整个django_coverage 应用程序放在您的第三方应用程序目录中。
    2. 更新您的 settings.INSTALLED_APPS 以包含 django_coverage
    3. 在您自己的设置文件中包含测试覆盖率特定设置。有关详细信息,请参阅settings.py

    【讨论】:

    • 这个问题不是关于如何安装 django 覆盖,而是包含/排除特定应用程序进行测试。
    • @sharafjaffri 哇,这太老了,我不记得细节了。但是我没有解释如何安装它,而是在修改 django_coverage 的设置时 exupero 可能出错的地方。
    猜你喜欢
    • 1970-01-01
    • 2018-07-18
    • 2011-03-16
    • 1970-01-01
    • 1970-01-01
    • 2021-02-07
    • 1970-01-01
    • 1970-01-01
    • 2020-11-05
    相关资源
    最近更新 更多