在测试场景的开头/结尾是否触发了某个功能?在每次测试之前/之后都会触发setUp和tearDown函数。
我通常希望拥有:
class TestSequenceFunctions(unittest.TestCase):
def setUpScenario(self):
start() #launched at the beginning, once
def test_choice(self):
element = random.choice(self.seq)
self.assertTrue(element in self.seq)
def test_sample(self):
with self.assertRaises(ValueError):
random.sample(self.seq, 20)
for element in random.sample(self.seq, 5):
self.assertTrue(element in self.seq)
def tearDownScenario(self):
end() #launched at the end, once
目前,这些setUp和tearDown是单元测试,并且分散在我所有的场景中(包含许多测试),一个是第一个测试,另一个是最后一个测试。
6
哪个版本?在Python 2.7中,已将unittest模块扩展为包括module_setup和module_teardown。
—
S.Lott
2.7还引入了setUpClass()和tearDownClass()类方法,这将使您可以在同一文件中拥有多个类,并具有各自的针对每个套房的设置和拆除功能。
—
Fafagrell 2011年