一、知识点整理
二、TestCase和参数化
- 类继承
class Sum_my(unittest.TestCase):
- 类里面,test开头的方法代表用例
- 参数化:@parameterized.expand
- 断言:self.assertEqual(num1,c)
@parameterized.expand([(1,2,3),(2,3,5),(100,200,300)])
def test_01(self,a,b,c):
num1 = sum1(a,b)
self.assertEqual(num1,c)
三、TestSuite和TestLoader套件
- TestSuite可以取全部用例
suite = unittest.TestSuite()
suite.addTest(unittest.makeSuite(unittest1.my_unit.Sum_my))
- TestSuite也可以取一个用例
suite = unittest.TestSuite()
suite.addTest(unittest1.my_unit.Sum_my("my_sum"))
- TestLoader只能取全部用例
suite = unittest.TestLoader().discover('.', 'my_unit.py')
使用TestSuite,需要import 用例文件
四、HTMLTestRunner生产报告
1、run( 套件 )
2、使用 “ wb " 后不能加 字符编码
3、打开文件为 .html 文件
suite = unittest.TestSuite()
suite.addTest(unittest.makeSuite(unittest1.my_unit.Sum_my))
with open('a.html','wb') as f:
runner = HTMLTestRunner(stream=f,title="我的第一个测试报告")
runner.run(suite)
提供源码供学习参考链接:https://pan.baidu.com/s/1TkGPyVKnTAUlF-SsR0ZmuQ
提取码:song