Python unittest:如何满足导入包的前端覆盖率
对于顶部有以下行的给定python文件:Python unittest:如何满足导入包的前端覆盖率,python,django,nose,coverage.py,python-coverage,Python,Django,Nose,Coverage.py,Python Coverage,对于顶部有以下行的给定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 如何编写单元测试,使nose不会显示这些行的“缺失”
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
如何编写单元测试,使nose不会显示这些行的“缺失”?我认为,如果它在代码覆盖率中显示这些行缺失,则意味着从未使用或导入过此模块。只要您成功导入这些模块,这些行就会显示为报告中所述,并且不需要额外的测试来验证导入这些经过良好测试的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
当在鼻子下运行时,将导致100%的覆盖率,对于此特定文件,使用覆盖率选项。我注释掉了
django.contrib
包,因为我没有使用django nose
,并且没有针对本例的正确设置,但这不重要。您能更具体一点吗?显示为缺失的内容是什么?你是说覆盖率报告吗?假设我文章中的代码行是文件的前六行,nose coverage会将这些行显示为缺少代码覆盖率。我想知道如何编写覆盖这些行的测试。听起来覆盖好像是在导入文件后开始的。演示如何运行测试。我知道这很旧,但现在我也遇到了同样的问题,实际上该模块已经导入,因为我在该模块中定义的类的方法中有绿线。对我来说,不先导入一个类就不可能从类中调用一个方法,但我认为正是这样。