class TestHttpRequest(unittest.TestCase): #!!!这里要继承TestCase def setUp(self): #创建操作excel的实例 self.t = DoExcel('test_case.xlsx', 'test_data') print("开始测试") @data(*test_data) def test_http_request(self, a): print("测试数据是:", a) print("目前正在执行第%s条用例" % a[0]) global COOKIES res = HttpRequest(a[4], eval(a[5])).httpRequest( a[3], cookies=COOKIES) #!!!要将从excel中读出的字典格式装换一下 if res.cookies != {}: #判断cookies是否为空用{},或用len(res.cookies)==0 COOKIES = res.cookies print(res.json()) try: self.assertEqual(str(a[6]), res.json()['code']) #!!!预期结果要转换成str result = 'PASS' except AssertionError as e: result = 'FAIL' raise e #!!!终止后面的代码 finally: self.t.write_data(a[0] + 1, str(res.json()), result) def tearDown(self): print("测试结束")
def get_k(): excel = DoExcel() stocks = excel.read() n = 1 for each in stocks: n += 1 # 获取最后一天的k线数据 k_data = s.get_K_data(each.code, start_date='2020-10-23') excel.write_k_data(n, k_data)
def get_industry(): excel = DoExcel() stocks = excel.read() n = 1 for each in stocks: n += 1 industry = s.get_stock_industry(each.code) # 获取最后一天的k线数据 excel.write_industry(n, industry)
class TestCreateUser(unittest.TestCase): """ 新建用户接口测试 """ excel_filename = "create_user.xlsx" sheet_name = "create_user" do_excel = DoExcel(excel_filename, sheet_name) testcases = do_excel.read_data() @classmethod def setUpClass(cls): cls.do_request = Request() request_header = { "Authorization": "Bearer yvXZbImBw1-PlsYl6aBAKS2Gw3GkKkfTTQ72kvne9ZGlQoT2g9ADhFGKzuN39UBkONr3BBl4aEcUhBrmuwPuTxB5kFlMaUPkXkbGRy80fbRQXk6NokAK2j6nLkT7C8wtoIwSJAY6463Z2Mt061O", "Accept": "application/json" } cls.do_request.add_header(request_header) do_log.info("开始执行用例") @classmethod def tearDownClass(cls): cls.do_request.close() do_log.info("用例执行结束") @ddt.data(*testcases) def test_create_user(self, one_testcase): res = self.do_request.send(one_testcase.method, one_testcase.url, json=one_testcase.data) actual_value = res.json() try: self.assertEqual(one_testcase.expected_value, actual_value.get("message"), "用例‘" + one_testcase.name + "’执行失败") self.do_excel.write_data(one_testcase, res.text, "成功") except AssertionError as e: do_log.error(f"具体异常是:{e}") self.do_excel.write_data(one_testcase, res.text, "失败") raise e
""" 添加公共的请求头 :param one_dict: 请求头参数,字典类型 :return: """ self.session.headers.update(one_dict) def close(self): """ :return: """ self.session.close() if __name__ == '__main__': excel_filename = "create_user.xlsx" sheet_name = "create_user" doexcel = DoExcel(excel_filename, sheet_name) data = doexcel.read_data() request_header = { "Authorization": "Bearer GIGGXI0XSkW3aKxys8xPYxPNP6xAG4mT8sLwJYJvRCOrDD8dZdlcE1wOTmPCglC4n0HxwX9cQ8s3Jbas-rFFOK9ybQdmBc7xvaCGupVfwB3VKaCQDKn1o8hzktg4Im1hw7xWTih", "Accept": "application/json" } create_user = Request() create_user.add_header(request_header) res = create_user.send(data[0].method, data[0].url, json=data[0].data) print(res.json()) doexcel.write_data(data[0], res.json()["message"], "成功")
def setUp(self): #创建操作excel的实例 self.t = DoExcel('test_case.xlsx', 'test_data') print("开始测试")
#实现http请求测试的类 import unittest from http_request import HttpRequest from do_excel import DoExcel from ddt import ddt, data #读取到的测试数据 test_data = DoExcel('test_case.xlsx', 'test_data').read_data() # print(test_data) COOKIES = None #全局变量 @ddt class TestHttpRequest(unittest.TestCase): #!!!这里要继承TestCase def setUp(self): #创建操作excel的实例 self.t = DoExcel('test_case.xlsx', 'test_data') print("开始测试") @data(*test_data) def test_http_request(self, a): print("测试数据是:", a) print("目前正在执行第%s条用例" % a[0]) global COOKIES res = HttpRequest(a[4], eval(a[5])).httpRequest( a[3], cookies=COOKIES) #!!!要将从excel中读出的字典格式装换一下 if res.cookies != {}: #判断cookies是否为空用{},或用len(res.cookies)==0 COOKIES = res.cookies print(res.json())
import json import requests import logging from do_excel import DoExcel logging.basicConfig(level=logging.NOTSET) request_header = { "Authorization": "Bearer ImRj0mXjpjW8P6OJZItwGmrZcESclXyl79NrDG9tPPhHwNHgFBJLa7metPKmyydSTJpAUCgeE4M0xDRaoqhkP9w_AB-JnGHNhlvE7d5uqm493FqUVk1zDg3StnJcxns2Ptk9yqIPgieX_YL3kqve", "Accept": "application/json" } excel_filename = "create_user.xlsx" sheet_name = "create_user" doexcel = DoExcel(excel_filename, sheet_name) data = doexcel.read_data() print(type(data)) print(type(data[0].data)) print(data) # data1 = { # "id": None, # "appParam": [ # { # "appId": 3, # "enable": 1, # "sysAppLimits": [ # { # "name": "限制消耗线索数",