มีฟังก์ชันที่เริ่มต้น / สิ้นสุดของสถานการณ์การทดสอบหรือไม่? ฟังก์ชัน 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 เหล่านี้เป็นการทดสอบหน่วยและแพร่กระจายในทุกสถานการณ์ของฉัน (มีการทดสอบจำนวนมาก) รายการหนึ่งเป็นการทดสอบครั้งแรกอีกรายการหนึ่งเป็นการทดสอบครั้งสุดท้าย