0
我有一个装饰器,它包装从鼻子测试用例中产生的发生器。对于每一次迭代,如果发生异常,我希望捕获并运行特定的拆卸,但它看起来并不像预期的那样。在装饰器中捕捉发生器的异常
def print_log(test_case):
@wraps(test_case)
def run_test(self):
try:
for _ in test_case(self): pass
except:
Test_Loop.failure_teardown(self)
raise
return run_test
有什么我做错了吗?
意外的行为是它甚至没有达到预期的区块。为了测试,我强制在yield函数中的某处发生异常,并且它被唤起,但它只是继续进行常规拆卸,而不是我写的特定拆解。 – ILostMySpoon