千家信息网

python使用unittest测试接口步奏的方法

发表于:2024-11-26 作者:千家信息网编辑
千家信息网最后更新 2024年11月26日,小编给大家分享一下python使用unittest测试接口步奏的方法,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!这次给大
千家信息网最后更新 2024年11月26日python使用unittest测试接口步奏的方法

小编给大家分享一下python使用unittest测试接口步奏的方法,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

这次给大家带来python使用unittest测试接口步奏详解,python使用unittest测试接口的注意事项有哪些,下面就是实战案例,一起来看一下。

1.首先使用 python 的requests 对接口进行测试

# TestInface.py import requests,json url = visit.get_test_url() news_url = url+'news.info' headers = baseToken.basetoken_datas()['headers'] def new_data(data):      r = requests.post(news_url,data=data,headers=headers)   cnn = json.loads(r.text)   return cnn

2.使用unittest调用接口,且对接口测试的结果进行统计

# TestCase.py # -*- coding:utf-8 -*- import unittest import TestInface   # 对执行的case结果进行统计 # --------------------------------------------------------------------------------------------------------------------- text = "" num_success = 0 num_fail = 0   # 测试通过 def decide_success(joggle):   global num_success   num_success += 1   print_out(joggle + ":接口测试通过\n")   return num_success   # 测试不通过 def decide_fail(txt, joggle):   global num_fail   num_fail += 1   print_out(joggle + ":接口测试未通过 \n错误信息: " + txt + "\n")   return num_fail   # 邮件内容写入 & 客户端输出 def print_out(message):   global text   text += "\n" + message   return text   # 返回值判断 def decide_result(result, code, joggle):   if result['code'] == code:     decide_success(joggle)     return "pass"   else:     txt = u"期望返回值:" + str(code) + u" 实际返回值:" + str(result) + '\n' + result['message']     decide_fail(txt, joggle)     return "fail"   def decide_Count():   data = {     'num_success': num_success,     'num_fail': num_fail,     'text': text   }   return data # -------------------------------------------------------------------------------------------------------------------- # 定义 unittest class MyTestCase(unittest.TestCase):     # 初始化工作   def setUp(self):     pass     # 退出清理工作   def tearDown(self):     pass   def test_Case1(self):   id = 16     data = {'id':id}     a = TestInface.new_data(data)     decide_result(a,0,'test_Case1')

3.使用suite对case进行管理

# TestSuite.py # -*- coding:utf-8 -*- import unittest import TestCase   def test_InterFace():     # 构造测试集   suite = unittest.TestSuite()   suite.addTest(TestCase("test_Case1")) # unittest中的测试用例     runner = unittest.TextTestRunner()   runner.run(suite)   # 对测试集进行测试需要返回值   # return suite  if name == 'main':     # unittest.main(defaultTest='test_InterFace')   # 执行测试   runner = unittest.TextTestRunner()   runner.run(test_InterFace())

4.对接口的数据进行统计

# TestCensus.py # -*- coding:utf-8 -*- import time import TestSuite import send_email import TestCase  class Test_Calss():    def census(self):     text = ''     # 初始化测试起始时间     start_time = time.time()     # 调用suite测试集     TestSuite.test_InterFace()     # 结束执行时间计算     end_time = time.time()      result = TestCase.decide_Count()     # 接口测试统计说明     total_use_case = u"执行用例总数:" + str(result['num_success'] + result['num_fail']) + \              u"\t通过数:" + str(result['num_success']) + \              u"\t不通过数:" + str(result['num_fail'])     total_time = u"\t总共耗时:" + str(round((end_time - start_time), 3)) + u'秒'     text = result['text'] + total_use_case + total_time     print (text)      # 发生测试报告邮件     send_email.email_file(text)  if name == 'main':   Test_Calss().census()

以上是"python使用unittest测试接口步奏的方法"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

0