从覆盖范围中排除函数



我正在使用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处于该设置中,因为它会覆盖默认设置。

相关内容

  • 没有找到相关文章

最新更新