对于顶部有以下行的给定python文件:
import traceback
import datetime
from django.contrib.contenttypes import generic
from django.contrib.contenttypes.models import ContentType
from django.db import models
from django.conf import settings
如何编写单元测试,导致鼻子不显示'缺失'那些线?
答案 0 :(得分:0)
我认为如果它在代码覆盖率中显示缺少这些行,则表示此模块从未使用或导入过。只要您成功导入这些模块,这些行将显示在报告中,并且不需要额外的测试来验证导入那些经过良好测试的django模块的能力。只要你有一个单独的测试来测试该模块中的某些东西,你应该没问题。例如:
import traceback
import datetime
# from django.contrib.contenttypes import generic
# from django.contrib.contenttypes.models import ContentType
from django.db import models
from django.conf import settings
def foo(a):
return a + 5
def test_foo():
assert foo(5) == 10
对于此特定文件,使用--with-coverage
选项在nose下运行时,将导致100%覆盖率。我评论了django.contrib
个软件包,因为我没有使用django-nose
并且没有针对此示例进行适当的设置,但这并不重要。