博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Python_python单元测试
阅读量:5065 次
发布时间:2019-06-12

本文共 2087 字,大约阅读时间需要 6 分钟。

# unittest 单元测试的一个框架 # 什么框架 #     一堆工具的集合。 #    TestCase #    TestSuite 测试套件,多个用例在一起 # TestLoader是用来加载TestCase到TestSuite中的 # TestRunner是来执行测试用例的,测试的结果会保存到TestResult实例中, # 包括运行了多少测试用例,成功了多少,失败了多少等信息 # # 1、用例必须以test开头 # 2、用例执行的顺序是安装字母排列的顺序来的 import unittest import HTMLTestRunner from BeautifulReport import BeautifulReport def calc(x,y): return x+y class TestCalc(unittest.TestCase): def test_pass_case(self): '''这个通过的测试用例''' print('这个通过用例') res = calc(1,2) self.assertEqual(3,res) self.assertNotEqual(2,3)#返回的结果不一样 def setUp(self): print('我是setUp。。') #每个用例运行之前都会执行它 def tearDown(self): #每个用用例运行完之后都会执行它 print('我是tearDown') @classmethod def setUpClass(cls): print('我是setupClass') #所有的用例执行之前执行一次 @classmethod def tearDownClass(cls): print('我是tearDownClass') #所用的用例都运行完之后执行一次 def test_a(self): '''这个普通的测试用例''' print('a') def test_fail_case(self): '''这个是失败的测试用例''' print('这个是失败的测试用例') res = calc(9,8) self.assertEqual(98,res) def test_haha(self): '''哈哈哈''' self.assertEqual(1,2) if __name__ =='__main__': unittest.main() #他会帮你运行当前这个python里面所有的测试用例。 # suite = unittest.TestSuite()#定义一个测试套件 # # suite.addTest(TestCalc('test_pass_case')) # # suite.addTest(TestCalc('test_a')) # # suite.addTest(TestCalc('test_fail_case')) #单个添加用例的 # suite.addTests(unittest.makeSuite(TestCalc)) #这个类里面的所有测试用例 # # f = open('report.html','wb')#打开一个测试报告的文件 # # runner = HTMLTestRunner.HTMLTestRunner(stream=f,title='牛寒阳测试结果', # # description='描述') # # runner.run(suite) #运行 难看的报告 # result = BeautifulReport(suite) # result.report(filename='测试报告', description='描述', log_path='.') #运行多个目录下的单元测试文件 import unittest from BeautifulReport import BeautifulReport import xmlrunner suite = unittest.TestSuite() all_case = unittest.defaultTestLoader.discover('cases','test*.py') # # for case in all_case: # suite.addTests(case) [ suite.addTests(case) for case in all_case ] #和上面的注释代码是一样的 result = BeautifulReport(suite) result.report(filename='很多测试用例.html',description='这个是描述',log_path='.') # runner = xmlrunner.XMLTestRunner('.') #这个是为了产生报告给Jenkins用 # runner.run(suite) #运行用例
 

转载于:https://www.cnblogs.com/zhufb/p/8532849.html

你可能感兴趣的文章
VC++2012编程演练数据结构《8》回溯法解决迷宫问题
查看>>
第一阶段冲刺06
查看>>
WIN下修改host文件并立即生效
查看>>
十个免费的 Web 压力测试工具
查看>>
ckeditor 粘贴后去除html标签
查看>>
面试题
查看>>
51Nod:活动安排问题之二(贪心)
查看>>
EOS生产区块:解析插件producer_plugin
查看>>
数据库框架的log4j日志配置
查看>>
lintcode-easy-Remove Element
查看>>
LeetCode 343. Integer Break
查看>>
lvs简介
查看>>
小程序动画Animation,高度增加动画形式,图标旋转动画形式
查看>>
PT协程简介
查看>>
LSA算法简单理解
查看>>
然之协同系统3.5(OA+CRM+CASH+TEAM)
查看>>
文件系统损坏导致虚拟机无法正常启动的问题及解决方法
查看>>
C++入门经典-例4.1-声明、定义和使用函数
查看>>
[无向图割点] PKU 1523 SPF
查看>>
JAVA WEB开发环境搭建教程
查看>>