python|python unittest单元测试的步骤分析
说明
1、导入unittest模块。
2、导入被测对象。
3、创建测试类unittest.TestCase。
4、重写setUp和tearDown(如果有初始化和结束)
5、以函数的形式写测试项目:函数名以test_开头。
6、unittest运行测试用例。
实例
import unittestclass LoginCheckTest(unittest.TestCase):def setUp(self) -> None:print("每条用例")def test_login(self):self.assertEqual(0, login_check('lemon','123456').get('code'))def test_password_error(self):self.assertEqual(1,login_check('lemon','8888222').get('code'))def test_user_error(self):self.assertEqual(1, login_check('aaaabc', '123456').get('code'))if __name__ == '__main__':unittest.main()
【python|python unittest单元测试的步骤分析】实例扩展:
python unittest单元测试实例
import unittestclass MyTest(unittest.TestCase): # 继承unittest.TestCasedef tearDown(self):# 每个测试用例执行之后做操作print('111')def setUp(self):# 每个测试用例执行之前做操作print('22222')@classmethoddef tearDownClass(self):# 必须使用 @ classmethod装饰器, 所有test运行完后运行一次print('4444444')@classmethoddef setUpClass(self):# 必须使用@classmethod 装饰器,所有test运行前运行一次print('33333')def test_a_run(self):self.assertEqual(1, 1) # 测试用例def test_b_run(self):self.assertEqual(2, 2) # 测试用例if __name__ == '__main__':unittest.main()#运行所有的测试用例
生成一个测试报告
import HTMLTestRunnerimport unittestclass MyTest(unittest.TestCase):#继承unittest.TestCasedef tearDown(self):#每个测试用例执行之后做操作print('111')def setUp(self):#每个测试用例执行之前做操作print(22222)def test_run(self):# self.assertEqual(1,1)self.assertIs(1,1)#测试用例def test_run2(self):# self.assertEqual(1,1)self.assertIs(1,1)#测试用例def test_run3(self):# self.assertEqual(1,1)self.assertIs(1,1)#测试用例def test_run1(self):# self.assertEqual(1,1)self.assertIs(1,1)#测试用例if __name__ == '__main__':test_suite = unittest.TestSuite()#创建一个测试集合test_suite.addTest(MyTest('test_run1'))#测试套件中添加测试用例#test_suite.addTest(unittest.makeSuite(MyTest))#使用makeSuite方法添加所有的测试方法fp = open('res.html','wb')#打开一个保存结果的html文件runner = HTMLTestRunner.HTMLTestRunner(stream=fp,title='api测试报告',description='测试情况')#生成执行用例的对象runner.run(test_suite)#执行测试套件
到此这篇关于python unittest单元测试的步骤分析的文章就介绍到这了,更多相关python unittest单元测试的过程内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
推荐阅读
- python学习之|python学习之 实现QQ自动发送消息
- 逻辑回归的理解与python示例
- python自定义封装带颜色的logging模块
- 【Leetcode/Python】001-Two|【Leetcode/Python】001-Two Sum
- Python基础|Python基础 - 练习1
- Python爬虫|Python爬虫 --- 1.4 正则表达式(re库)
- Python(pathlib模块)
- python青少年编程比赛_第十一届蓝桥杯大赛青少年创意编程组比赛细则
- Python数据分析(一)(Matplotlib使用)
- Python|Python 9.20