python unittest框架學習筆記(一)
阿新 • • 發佈:2019-01-12
unittest是一個python的測試框架,看了很多文章,整理了一個自己的理解:如下圖
整體流程就是:
(1)首先需要完成的是TestCase,一個TestCase例項就是一個測試用例。
(2)通過TestLoader載入到TestSuite中;
(3)通過TestRunner來執行已經載入了TestCase的TestSuite,產生的結果儲存在TestResult裡。
整個過程都在unittest.main()中。
eg:
import random import unittest class TestSequenceFunctions(unittest.TestCase): def setUp(self): self.seq = range(10) def test_shuffle(self): # make sure the shuffled sequence does not lose any elements random.shuffle(self.seq) self.seq.sort() self.assertEqual(self.seq, range(10)) # should raise an exception for an immutable sequence self.assertRaises(TypeError, random.shuffle, (1,2,3)) 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) if __name__ == '__main__': unittest.main()