Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Django 为什么nose会忽略报道中的某些文件?_Django_Coverage.py_Django Nose - Fatal编程技术网

Django 为什么nose会忽略报道中的某些文件?

Django 为什么nose会忽略报道中的某些文件?,django,coverage.py,django-nose,Django,Coverage.py,Django Nose,我正在对分配给我的项目进行测试。一切都是通过调用tox触发的。 默认测试使用nose运行,它添加了一个覆盖率报告,这是tox调用的命令: django-admin test -s 和设置文件具有鼻子的以下配置: NOSE_ARGS = [ '--with-coverage', '--cover-erase', '--cover-package=app_name', '--cover-inclusive' ] 这是用tox检测鼻子时显示的报告: Name

我正在对分配给我的项目进行测试。一切都是通过调用tox触发的。 默认测试使用nose运行,它添加了一个覆盖率报告,这是tox调用的命令:

django-admin test -s
和设置文件具有鼻子的以下配置:

NOSE_ARGS = [
    '--with-coverage',
    '--cover-erase',
    '--cover-package=app_name',
    '--cover-inclusive'
]
这是用tox检测鼻子时显示的报告:

Name                                                    Stmts   Miss  Cover
---------------------------------------------------------------------------
app_name/__init__.py                                       0      0   100%
app_name/apps.py                                           3      0   100%
app_name/apps_settings.py                                 12      2    83%
app_name/base.py                                         118     27    77%
app_name/choices.py                                       18      0   100%
app_name/constants.py                                      6      0   100%
app_name/exceptions.py                                    10      0   100%
app_name/helpers/__init__.py                               0      0   100%
app_name/helpers/util.py                                  20     10    50%
app_name/management/__init__.py                            0      0   100%
app_name/migrations/0001_initial.py                        9      0   100%
app_name/migrations/__init__.py                            0      0   100%
app_name/mixins.py                                         6      0   100%
app_name/models.py                                        64      4    94%
app_name/permissions.py                                    7      3    57%
app_name/serializers/__init__.py                           0      0   100%
app_name/serializers/address_serializer.py                 7      0   100%
app_name/serializers/base_response_serializer.py           7      0   100%
app_name/serializers/body_request_user_serializer.py      14      0   100%
app_name/serializers/contact_serializer.py                 4      0   100%
app_name/serializers/file_serializer.py                   11      2    82%
app_name/serializers/iban_serializer.py                    3      0   100%
app_name/serializers/identification_serializer.py         11      2    82%
app_name/serializers/payment_account_serializer.py         3      0   100%
app_name/serializers/transfer_serializer.py               20     10    50%
app_name/services/__init__.py                              0      0   100%
app_name/services/authentication_service.py                7      0   100%
app_name/services/document_service.py                     23      9    61%
app_name/services/user_service.py                         37     21    43%
app_name/services/webhook_service.py                      26      7    73%
app_name/storage_backends.py                              10      0   100%
app_name/views/__init__.py                                 0      0   100%
app_name/views/webhook_view.py                            25      8    68%
---------------------------------------------------------------------------
TOTAL                                                     481    105    78%
----------------------------------------------------------------------
Ran 5 tests in 4.615s
但是,如果在此之后运行
覆盖率报告
,则会显示:

Name                                                      Stmts   Miss  Cover
-----------------------------------------------------------------------------
app_name/__init__.py                                         0      0   100%
app_name/apps.py                                             3      0   100%
app_name/apps_settings.py                                   12      2    83%
app_name/base.py                                           118     27    77%
app_name/choices.py                                         18      0   100%
app_name/constants.py                                        6      0   100%
app_name/decorators.py                                      10      7    30%
app_name/exceptions.py                                      10      0   100%
app_name/helpers/__init__.py                                 0      0   100%
app_name/helpers/util.py                                    20     10    50%
app_name/management/__init__.py                              0      0   100%
app_name/management/commands/__init__.py                     0      0   100%
app_name/management/commands/generate_uuid.py                9      4    56%
app_name/migrations/0001_initial.py                          9      0   100%
app_name/migrations/__init__.py                              0      0   100%
app_name/mixins.py                                           6      0   100%
app_name/models.py                                          64      4    94%
app_name/permissions.py                                      7      3    57%
app_name/serializers/__init__.py                             0      0   100%
app_name/serializers/address_serializer.py                   7      0   100%
app_name/serializers/base_response_serializer.py             7      0   100%
app_name/serializers/body_request_token_serializer.py        4      0   100%
app_name/serializers/body_request_user_serializer.py        14      0   100%
app_name/serializers/contact_serializer.py                   4      0   100%
app_name/serializers/document_serializer.py                  7      0   100%
app_name/serializers/file_serializer.py                     11      2    82%
app_name/serializers/files_serializer.py                     4      0   100%
app_name/serializers/iban_serializer.py                      3      0   100%
app_name/serializers/identification_serializer.py           11      2    82%
app_name/serializers/payment_account_serializer.py           3      0   100%
app_name/serializers/transfer_serializer.py                 20     10    50%
app_name/serializers/user_information_serializer.py          7      0   100%
app_name/services/__init__.py                                0      0   100%
app_name/services/account_service.py                        62     45    27%
app_name/services/authentication_service.py                  7      0   100%
app_name/services/document_service.py                       23      9    61%
app_name/services/method_service.py                         23     15    35%
app_name/services/user_service.py                           37     21    43%
app_name/services/webhook_service.py                        26      7    73%
app_name/storage_backends.py                                10      0   100%
app_name/tests/__init__.py                                   0      0   100%
app_name/tests/apps/__init__.py                              0      0   100%
app_name/tests/apps/apps_test.py                             9      0   100%
app_name/tests/helpers/__init__.py                           0      0   100%
app_name/tests/helpers/helpers_test.py                       7      0   100%
app_name/tests/services/__init__.py                          0      0   100%
app_name/tests/services/authentication_service_test.py       8      0   100%
app_name/tests/services/document_service_test.py            13      0   100%
app_name/tests/services/user_service_test.py                13      0   100%
app_name/urls/__init__.py                                    0      0   100%
app_name/urls/webhook_url.py                                 7      2    71%
app_name/views/__init__.py                                   0      0   100%
app_name/views/webhook_view.py                              25      8    68%
-----------------------------------------------------------------------------
TOTAL                                                       664    178    73%
现在,正如您所看到的,nose报告忽略了某些文件,但覆盖率显示了这些文件,如
app\u name/services/account\u service.py
。由于该文件包含功能代码,所以应该在报告中显示

有趣的是,据我所知,nose和coverage这两个库都是从同一个报告文件
生成报告的


我猜这是默认的鼻子行为。我对鼻子不太熟悉,所以也许有人能告诉我为什么会出现这种行为差异。

关于鼻子,最重要的是它已经5年多没有保养了。您应该转到另一个测试运行程序(pytest)。您好@NedBatchelder谢谢您的帮助。为了证明这一点,我可以给我的同事看一些链接吗?我希望有好的论据来说服他们从nose转移到django测试(如果我是正确的话,它使用unittest)。另外,您会推荐使用django测试吗?nose回购上次提交是在五年多前:。上一次发布是大约六年前:。nose docs()的第一句话说它处于维护模式(“nose在过去几年中一直处于维护模式…”),这句话是在2016年11月添加的:无论你看到哪里,都有线索表明这是一个旧的未维护工具。