时间:2021-07-01 10:21:17 帮助过:34人阅读
本文实例为大家分享了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调用接口,且对接口测试的结果进行统计
输出 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')
- # 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
- # 邮件内容写入 & 客户端
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用法实例
Python单元测试框架unittest简明使用实例
Python中unittest模块做UT(单元测试)使用实例
以上就是python如何使用unittest测试接口_python的详细内容,更多请关注Gxl网其它相关文章!