python使用unittest测试接口步奏详解

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

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()

相信看了本文案例你已经掌握了方法,更多精彩请关注php中文网其它相关文章!

推荐阅读:

python

python

以上就是

© 版权声明
THE END
喜欢就支持一下吧
点赞11 分享