我正在使用django nose进行测试和覆盖。 但是,我得到的不是控制台输出中的测试文件,而是以下行:
django/core/cache/backends/db.py 139 117 16% django/core/cache/backends/locmem.py 109 82 25% django/core/management/commands/createcachetable.py 68 45 34% django/core/management/commands/migrate.py 171 91 47% django/core/serializers/xml_serializer.py 220 172 22% django/db/migrations/autodetector.py 573 522 9% django/db/migrations/executor.py 204 127 38% django/db/migrations/graph.py 241 116 52% django/db/migrations/loader.py 170 66 61% django/db/migrations/optimizer.py 26 22 15% django/db/migrations/questioner.py 129 97 25% django/db/migrations/recorder.py 42 6 86% django/db/migrations/serializer.py 278 199 28% django/db/migrations/topological_sort.py 15 13 13% django/db/migrations/utils.py 11 4 64% django/db/migrations/writer.py 183 145 21% django/db/models/sql/compiler.py 675 364 46% django/utils/synch.py 56 39 30% django/utils/xmlutils.py 16 9 44%
我用 ./manage.py test mysite 从最外层的django文件夹。 我的设置是:
./manage.py test mysite
TEST_RUNNER = 'django_nose.NoseTestSuiteRunner' NOSE_ARGS = ['--with-spec','--with-coverage', '--spec-color', "--exe"]
如何仅显示测试的覆盖率?
使用 NOSE_ARGS 在设置中,确定要测试的所有应用:
NOSE_ARGS
NOSE_ARGS = [ '--with-coverage', '--cover-package=app1, app2' ]
其中,app1和app2是应用程序的名称
注: 如果您有一个文件结构,其中应用程序位于主python模块内,那么 app1 应替换为: yourproject.app1
app1
yourproject.app1