Java教程

unittest

本文主要是介绍unittest,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
import unittest


一:unittest写测试用例(测试模块要以test_开头:test_math_method)
    导入需要测试的类
    1:TestLogin继承unittest.TestCase(测试类以Test打头)
    2:所有用例函数test_开头
    3:用例函数不能传参只有self关键字
    4:执行所有用例(默认是以字母顺序执行)默认执行属性按0-9,A-Z,a-z
       if __name__=='__main__':
            unittest.main()
二:测试套件
    1:导入测试类TestLogin
    2:创建测试套件容器suite=unittest.TestSuite()
    3:执行方式
        1:执行一条用例:测试类('测试方法名')
            suite.addTest(TestLogin('test_01'))

        加载器:loader=unittest.TestLoader()
        2:执行测试模块的全部用例:  form import 模块名
            按测试模块名加载:suite.addTest(loader.loadTestsFromModule(test_login))
        3:执行测试类的全部用例:     form import 测试类名
            按测试类名加载:suite.addTest(loader.loadTestsFromTestCase(TestLogin))
三:测试类中断言
    self.assertEqual(期望a,实际b,'函数功能出错了')    a==b              self.assertEqual(2,res)
    assertTrue(实际a, msg=None)                   a布尔值true
    assertIn
四:执行和报告:HTMLTestRunnerCN.py文件在python3/lib下直接导入import HTMLTestRunnerCN

with open('test_report1.html','wb') as file:
   runner=HTMLTestRunnerCN.HTMLTestReportCN(stream=file, verbosity=2,title='测试。。。测试',description='筑泰测试',tester='李加')

   runner.run(suite)


例子:
1:按顺序执行指定的用例
suite=unittest.TestSuite()
suite.addTest(TestMathMethod('test_add_02'))
suite.addTest(TestMathMethod('test_add_01'))
runner=unittest.TextTestRunner()
runner.run(suite)

2:按测试类加载
suite=unittest.TestSuite()
loader=unittest.TestLoader()
suite.addTest(loader.loadTestsFromTestCase(TestMathMethod))
runner=unittest.TextTestRunner()
runner.run(suite)

2:按模块加载
suite=unittest.TestSuite()
loader=unittest.TestLoader()
suite.addTest(loader.loadTestsFromModule(TestMathMethod))
runner=unittest.TextTestRunner()
runner.run(suite)

五:异常处理后要记得抛出
 def test_add_03(self):
       res=MathMethod(-1,-1).add()
       print(3)
       try:
          self.assertEqual(2,res,'两个负数相加出错了')
       except AssertionError as e:
           print('出错的类型{}'.format(e))
           raise e




六:命令行执行(进入项目目录--最终包)
python3 -m unittest test_login.TestLogin.test_login_03
这篇关于unittest的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!