以下举一个最简单的unitest实例,包含备注,自己拉取代码运行一次就知道原理了
import unittest
import osclass TestSample(unittest.TestCase):@classmethoddef setUpClass(cls) -> None:print('整个测试类只执行一次')def setUp(self) -> None:print("每个测试开始前执行一次")def test_equal(self):self.assertEqual(1,1)def test_no_equal(self):self.assertNotEqual(1,2)def tearDown(self) -> None:print('每个测试结束后执行一次')@classmethoddef tearDownClass(cls) -> None:print('整个个测试执行一次')if __name__ == '__main__':# unittest.main()#添加用例集suite = unittest.defaultTestLoader.discover(os.path.join(os.path.dirname(__file__)), pattern='*.py',top_level_dir=os.path.dirname(__file__))#执行用例,默认函数名开头为test的用例runner = unittest.TextTestRunner(verbosity=2)runner.run()
上面有前置函数,后置函数,通称为测试夹具;
测试结果报告默认在控制台输出,如果想要有html的测试报告,可以用HTMLTestRunner;以下附上对应的git代码示例
Mr_wilson_liu / Python unitest实例 · GitCode
效果展示: