怎么做接口调试?接口调试的工具有哪些比较好?
304
2022-08-22
Python unittest 基本框架解析(2)(python是什么意思)
下面例子,是一般测试框架的基本结构
框架知识点包括:实例化被测试模块类、装载测试用例、测试套件打包、保存测试输出结果、生成测试报告等
测试情况包括 :跳过某个case、执行成功、执行失败
#待测试模块 -> myclass.py
class myclass: def __init__(self): pass def sum(self, x, y): return x+y def sub(self, x, y): return x-y def cheng(self, x, y): return x*y #单元测试模块 -> mytest.pyimport unittest #导入测试模块import myclass #导入待测试模块class mytest(unittest.TestCase): #初始化工作 def setUp(self): self.tclass = myclass.myclass() #实例化了被测试模块中的类 #退出清理工作 def tearDown(self): pass #具体的测试用例 def test_sum(self): self.assertEqual(self.tclass.sum(1,2) ,3) #跳过某个case @unittest.skip("I don't want to run this case.") def test_sub(self): self.assertEqual(self.tclass.sub(4,2) ,2) def test_cheng(self): self.assertEqual(self.tclass.cheng(2,3) ,5) if __name__ == '__main__': #装载测试用例(该句话等价于tests = [mytest("test_sum"),mytest("test_sub"),mytest("test_cheng")]) tests = unittest.TestLoader().loadTestsFromTestCase(mytest) #使用测试套件并打包测试用例(addTests()等价于addTest()) suite = unittest.TestSuite() suite.addTest(tests) #保存unittest的测试输出日志 log_name = "log.txt" with open(log_name, 'w+')as f: result = unittest.TextTestRunner(stream = f, verbosity = 2).run(suite) #若不保存测试输出结果,执行如下命令 #result = unittest.TextTestRunner(verbosity = 2).run(suite) #生成测试报告 print("testsRun:%s" %result.testsRun) print("failures:%s" %len(result.failures)) print("errors:%s" %len(result.errors)) print("skipped:%s" %len(result.skipped)) #以上“if __name__ == '__main__':”下的内容,完全可以使用“unittest。main()”替代(前提是:所有的测试模块均以test开头)
交互界面执行结果:
测试输出结果(log):
测试结果保存地址:C:\Users\xxx\Desktop
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~