首页 文章

如何禁用鼻子测试的覆盖率报告

提问于
浏览
8

希望是一个简单的python / django nose 测试问题,虽然我在 nose 的文档中找不到答案 .

在使用 ./manage.py test 运行测试后,如何停止显示覆盖率报告?

我的覆盖率报告存在一个巨大的问题,迫使我向后滚动几十行以获得我的失败测试的追溯,它确实打断了我的工作流程!我喜欢使用 nose ,但如果我能够't figure out how to get rid of this I'将不得不回到香草django测试 .

提前感谢您的想法!

这是我必须回滚以获得回溯的内容:

./manage.py test
[...]
======================================================================
FAIL: testFreightAveragesContainer ([...].tests.test_average_container.AveragesContainerTestCase)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "[...]/tests/test_average_container.py", line 32, in testAveragesContainer
    121
AssertionError: 12 != 121

Name                                                    Stmts   Miss  Cover   Missing
-------------------------------------------------------------------------------------
abc.advertising                                             0      0   100%   
abc.advertising.management                                  0      0   100%   
abc.advertising.models                                     73     73     0%   1-91
abc.client                                                  0      0   100%   
abc.client.admin                                          200    200     0%   1-430
abc.client.forms                                           57     57     0%   1-99
abc.client.management                                       0      0   100%   
abc.client.models                                         434    434     0%   1-1007
abc.client.translations                                    30     30     0%   1-33
abc.client.views                                           18     18     0%   1-24
abc.cms                                                     0      0   100%   
abc.cms.management                                          0      0   100%   
abc.cms.models                                            235    235     0%   1-416
abc.cms.translations                                       18     18     0%   1-21
abc.commodity                                               0      0   100%   
abc.commodity.admin                                        51     51     0%   1-107
abc.commodity.forms                                        12      0   100%   
abc.commodity.models                                      343    343     0%   1-669
abc.commodity.search_indexes                               10      1    90%   13
abc.commodity.tests                                         5      3    40%   3-6
abc.commodity.tests.test_average_container                 14      1    93%   37
abc.commodity.tests.test_lead_time_analyser                70      0   100%   
abc.commodity.tests.test_price_analysers                    6      2    67%   10, 15
abc.commodity.translations                                 38     38     0%   1-40
abc.commodity.urls                                         11      0   100%   
abc.commodity.views                                       452    359    21%   22-25, 29-32, 74, 83-96, 101-142, 151-159, 166-172, 179-192, 198-250, 260-264, 287-288, 300-314, 321-378, 385-433, 441-502, 509-557, 563-567, 574-581, 587-662, 668-672, 679-686, 694-722, 730-754, 761-843, 850-854, 861-871, 878-904, 951-952, 962-978, 990-1010
abc.data_submission                                         0      0   100%   
abc.data_submission.iron_ore_submission_normalisation     187    187     0%   1-481
abc.data_submission.managers                               27     27     0%   1-71
abc.data_submission.models                                635    635     0%   1-1222
abc.invoicing                                               0      0   100%   
abc.invoicing.models                                      261    261     0%   1-440
abc.invoicing.translations                                 25     25     0%   1-26
abc.localisation                                            0      0   100%   
abc.localisation.management                                 0      0   100%   
abc.localisation.models                                   167    167     0%   1-528
abc.localisation.translation                                0      0   100%   
abc.localisation.translation.models                       144    144     0%   1-318
abc.localisation.translations                              22     22     0%   1-24
abc.mailing                                                 0      0   100%   
abc.mailing.admin                                         110    110     0%   1-165
abc.mailing.forms                                          33     33     0%   1-44
abc.mailing.management                                      0      0   100%   
abc.mailing.models                                        337    337     0%   1-706
abc.mailing.translations                                   15     15     0%   1-16
abc.marketing                                               0      0   100%   
abc.marketing.models                                        0      0   100%   
abc.product                                                 0      0   100%   
abc.product.models                                          0      0   100%   
abc.staff                                                   0      0   100%   
abc.staff.models                                           80     80     0%   1-154
.staff.translations                                      4      4     0%   1-5
abc.utils                                                   0      0   100%   
abc.utils.base                                              9      9     0%   1-19
abc.utils.base.models                                     187    187     0%   1-435
abc.utils.custom_ui                                         0      0   100%   
abc.utils.custom_ui.advanced_filter                       175    175     0%   1-241
abc.utils.custom_ui.models                                  3      3     0%   1-5
abc.utils.date                                             41     41     0%   1-73
abc.utils.db                                                0      0   100%   
abc.utils.db.routers                                       21     19    10%   1-7, 10, 13-32
abc.utils.format                                           33     33     0%   1-60
abc.utils.models                                           10     10     0%   1-30
abc.utils.navigation                                       10     10     0%   2-19
abc.utils.views                                            23     23     0%   1-42
-------------------------------------------------------------------------------------
TOTAL                                                    4636   4420     5%   
----------------------------------------------------------------------
Ran 9 tests in 0.059s

FAILED (failures=1)
./manage.py test commodity --failfast  13.59s user 0.17s system 97% cpu 14.099 total

3 回答

  • 1

    我不熟悉Django manage.py脚本,但我想你可以查看"test"任务,看看它叫做鼻子 . 我想你只想运行测试,没有覆盖范围 . 鼻子文件在这里http://somethingaboutorange.com/mrl/projects/nose/0.11.3/usage.html

  • 4

    您使用的是哪种版本的Django和鼻子?据我所知,这不是Django测试运行的默认行为,它绝对不是默认的鼻子 .

    给鼻子切换使用coverage plugin的相关选项是"--with-coverage" .

    我不确定你是不是偶然设置了覆盖率,你应该在settings.py中查找COVERAGE_MODULES和TEST_RUNNER之类的变量,看看它们的设置是什么 .

  • 3

    您可以:

    pip install nose-cov
    

    它可以更好地控制报告选项,除非您要求,否则不会向控制台报告 . 然后将 --with-coverage 更改为 --with-cov

    NOSE_ARGS = [
     '--with-cov',
     '--cov-report', 'html',
    ]
    

    这只会导出为html .

    同样的问题:

    Disabling nose coverage report to STDOUT when HTML report is enabled?

相关问题