gpt4 book ai didi

python - 我如何解释 Python coverage.py 分支覆盖结果?

转载 作者:太空狗 更新时间:2023-10-29 20:49:17 24 4
gpt4 key购买 nike

我正在使用 coverage.py衡量我的测试的代码覆盖率。我启用了分支覆盖,但我不太明白报告的意义。

没有分支覆盖,我得到 100% 的覆盖:

Name                           Stmts   Miss  Cover   Missing
------------------------------------------------------------
mylib/queries.py 44 0 100%

启用分支覆盖:

Name                           Stmts   Miss Branch BrPart  Cover   Missing
--------------------------------------------------------------------------
mylib/queries.py 44 1 20 3 94% 55, 21->10, 53->-48, 59->-58

可以找到问题来源here .

21->10说得通; if子句永远不会计算为 False (跳回外部 for 循环的开头)。

然而,53->-4859->-58让我挠头。它们是什么意思?

最佳答案

Dan 的评论很接近。首先,负数表示从该行号开始的函数退出。所以 -48 表示从第 48 行开始的函数退出。

问题不是空循环:如果循环完成,这些分支就会发生。看起来他们可能没有。

顺便说一句:Coverage.py 4.1b3 改变了一些这种行为:它们将被标记为 53->exit,59->exit。此外,分支机构本身的标识可能不同。试一试。

关于python - 我如何解释 Python coverage.py 分支覆盖结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37304078/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com