python如何开展单元测试?

python如何开展单元测试?


慕容3067478
浏览 726回答 2
2回答

拉丁的传说

首先你要知道单元测试是什么,单元测试就是针对软件中的最小可测试单元进行检查和验证,在python中可以理解为是对类或者是方法的正确性验证其次要了解python语言中的单元测试框架有哪些,在python语言中的单元测试框架也有很多,解释本身自带的unittest单元测试框架,还有很流行的pytest(有丰富的插件),这些在我之前在黑马程序员学习测试时都有涉及,或者你可以去看论坛上面有很多python开展单元测试的技术文章。最后使用某个单元测试框架如何实现,拿解释器自带的unittest举例子吧,使用这个框架来实现单元测试的话,需要创建测试类,创建测试方法,设置fixture,断言,然后通过测试条件和运行器来执行测试用例.其测试数据可以使用参数化动态获取.

当年话下

1 python中有许多的单元测试框架和工具,unittest, testtools, subunit, coverage, testrepository, nose, mox, mock, fixtures, discover等.所以先要选择一个工具2 最常用的就是python自带的标准模块unittest3 python文档中自带的示例1234567891011121314151617181920212223242526272829import randomimport 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()
打开App,查看更多内容
随时随地看视频慕课网APP