之前分享了一系列的文章,别离从原理,运行,断言,执行,测试套件,如何跳过用例来解说unittest,那么咱们持续分享
咱们首先看下上面的代码
import unittest class TestDemo(unittest.TestCase): def setUp(self): print("start") def tearDown(self): print("end") def testone(self): self.assertEqual(1,1) self.assertFalse(False) def testtwo(self): self.assertEqual(1, 1) self.assertFalse(False) if __name__=="__main__": unittest.main()
咱们执行下,看下后果
咱们发现在初始化的时候呢,咱们每次都会初始化,然而在理论的测试中呢,咱们可能会是有些参数或者动作只须要做一次即可,那么咱们只能在用例中初始化一次。那么unittest外面有没有这样的办法 呢?答案是必定呢,
@classmethod def setUpClass(cls): pass @classmethod def tearDownClass(cls): pass
咱们只须要在初始化一次的时候调用setUpClass和tearDownClass 即可。咱们将这些代码带入到咱们的测试用例中,看下成果会如何。
import unittest class TestDemo(unittest.TestCase): @classmethod def setUpClass(cls): print("one start") @classmethod def tearDownClass(cls): print("one end") def setUp(self): print("start") def tearDown(self): print("end") def testone(self): self.assertEqual(1,1) self.assertFalse(False) def testtwo(self): self.assertEqual(1, 1) self.assertFalse(False) if __name__=="__main__": unittest.main()
咱们执行下看下最初的成果
这样咱们就实现了初始化一次,清理一次的需要。
欢迎关注搞代码gaodaima网的集体公众号