我正在使用coverage.py来获取代码的测试覆盖率。
假设我在两个不同的模块中有两个同名的函数
# foo/foo.py
def get_something():
# fetch something
# 10 line of branch code
return "something foo/foo.py"
# bar/foo.py
def get_something():
# fetch something
# 20 line of branch code
return "something bar/foo.py"
如何排除bar.foo.get_something(...)
函数";完全"?
我们可以在函数定义级别上使用pragma
注释,该注释告诉覆盖范围完全排除函数。
# bar/foo.py
def get_something():# pragma: no cover
# fetch something
# 20 line of branch code
return "something bar/foo.py"
备注
如果我们的coveragepy配置文件中有exclude_lines
设置,请确保pragma: no cover
处于该设置中,因为它会覆盖默认设置。