我必须编辑一个python文件,这样在每个if条件之后,我需要添加一行
if condition_check:
if self.debug == 1: print "COVERAGE CONDITION #8.3 True (condition_check)"
#some other code
else:
if self.debug == 1: print "COVERAGE CONDITION #8.4 False (condition_check)"
#some other code
数字8.4(通常是y.x)指的是这个if条件在函数8(y)中(函数只是序列号,8没有什么特别之处),x是yth函数中的第x个if条件。你知道吗
当然,要添加的行必须添加适当的缩进。条件检查是正在检查的条件。你知道吗
例如:
if (self.order_in_cb):
self.ccu_process_crossing_buffer_order()
变成:
if (self.order_in_cb):
if self.debug == 1: print "COVERAGE CONDITION #8.2 TRUE (self.order_in_cb)"
self.ccu_process_crossing_buffer_order()
我如何做到这一点?你知道吗
额外背景: 我有大约1200行python代码,其中包含大约180个if条件—我需要查看在执行47个测试用例期间是否命中了每个if条件。 换句话说,我需要做代码覆盖。复杂的是-我正在使用cocotb刺激进行RTL验证。因此,没有直接的方法来驱动刺激,所以我看不到一个简单的方法来使用标准覆盖率.py测试覆盖率的方法。 有没有别的办法检查保险范围?我觉得我错过了什么。你知道吗
Cocotbhas support for coverage built in(docs)
如果你真的不能用覆盖率.py,然后我将编写一个使用检查堆栈找到调用者,然后linecache读取源代码行,并以这种方式记录。然后只需在整个文件中将
if something:
更改为if condition(something):
,这应该相当简单。你知道吗以下是概念证明:
这张照片:
相关问题 更多 >
编程相关推荐