我对静态方式TestCase.tearDown()
无效感到满意。
有时我会在单位测试期间创建一些我希望稍后清理的东西,而且我事先并不知道需要清理的东西。
是否可以向tear_down_list
中添加tearDown()
执行的闭包?
答案 0 :(得分:0)
喜欢这个吗?
class Foo(unittest.TestCase):
def setUp(self):
super(Foo, self).setUp()
self.tear_down_list = []
def tearDown(self):
super(Foo, self).tearDown()
for cb in self.tear_down_list:
cb() # prints 5
def foo(self):
# ...
foo = 5
def bar():
print(foo)
self.tear_down_list.append(bar)
# ...