我对pytest感到困惑,想知道是否有人知道发生了什么事。
我试图使项目的代码覆盖率达到100%。 缺少的两行分别是try-except-pass的except和pass部分:
> USER, PASS = None, None
> try:
> from secrets import USER, PASS
! except ImportError:
! pass
我将其更改为:
with suppress(ImportError):
from secrets import USER, PASS
现在,即使我没有添加任何测试,导入也包含在我的测试中(?)。
为什么?这是怎么回事?
答案 0 :(得分:1)
因为您已删除except
块。覆盖率只是检查代码行,因为很显然,您进行了测试,当到达代码的这一部分并成功执行时,该测试不会引发ImportError
。并且coverage
将这些算为已覆盖。