Python的覆盖范围说A行被覆盖了,需要知道从哪里开始

2024-09-29 23:18:52 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一份报道可能是撒谎或歪曲的。它说我在Django模型代码中覆盖了一行。我看不出这条线在哪里被使用。我可以看到模块被导入,类被导入,但它没有被调用/实例化

所以,报道说我已经报道了A行。大概这意味着B线,某个地方,正在运行它。我想知道B线在哪里在我的测试中,有没有办法找到调用线路a的线路B的集合(一个或多个)

似乎这可能是报道中的一个注释。这绝对是可以知道的,因为报道必须跟踪所使用的东西

我没看见

如果这没有实现,我想提出建议。我知道,对于每一行执行来说,完整的堆栈跟踪可能太复杂了。但是,也许仅仅检查一下即时调用框架将是一个良好的开端,并且会有所帮助


Tags: 模块django实例代码模型框架堆栈地方
2条回答

coverage.py 5.0中的新功能是dynamic contexts,它可以告诉您每行代码都运行了什么测试。它不会告诉你直接打电话的人,但这是一个开始

下面是一个有趣的方法来发现这条线的内容:

在行中插入一个bug

如果您随后运行测试,那么真正覆盖该行的测试将失败。堆栈跟踪应包括行B

相关问题 更多 >

    热门问题