# @interfacetest: https://apiv1.starschina.com/cms/v1.2/stock/dot/list from readConfig import ReadConfig from common.configHttp import RunMain from common.AES_CBC import AES_CBC from common.getSign import get_Sign from common.md5_sms import timeStamp_md5 from datetime import datetime import common.url as url from common.configMysql import OperationDbInterface import unittest, datetime, requests, json baseurl = url.baseurl() version = ReadConfig().get_app('version') app_key = ReadConfig().get_app('app_key') headers = RunMain().headers() aes = AES_CBC() md5 = timeStamp_md5() mysql = OperationDbInterface() global stock_code def __get_stock_code(): today = datetime.date.today().strftime("%Y-%m-%d") code_time_all = mysql.select_all( 'select stock_code, dot_time from stock_dot') global stock_code stock_code = "" for code_time in code_time_all: if code_time["dot_time"].strftime("%Y-%m-%d") == today: stock_code = code_time["stock_code"]
def GetEnterShop(self): info = RunMain().run_main(self.method, url + self.path, self.data) print(info) res = json.loads(info) self.assertEquals(res["code"], 200)
def login(self, method, url, data, header=None): """登录接口""" response = RunMain ().run_main (method=method, url=url, data=data, header=header) return response
def test_checkResult(self): if self.case_name.startswith("列表_"): get_url = url + self.path req = RunMain().run_main(self.method, get_url, self.query.encode('utf-8')) data = json.loads(req.text) res = json.dumps(data, ensure_ascii=False, indent=1) print("url:" + get_url + "\n" + "query:\n" + self.query) print("\n接口返回数据:\n\n" + res + "\n") self.assertEqual(req.status_code, self.status_code) self.assertEqual(data['code'], self.code) self.assertEqual(data['msg'], self.msg) time.sleep(1) print("结果数据为:\n" + str(req.status_code) + "," + str(data['code']) + "," + str(data['msg'])) print("基线数据为:\n" + str(self.status_code) + "," + str(self.code) + "," + str(self.msg) + "\n") elif self.case_name.startswith("消息_"): cu.execute(self.sql) da = cu.fetchall() task_id = da[0][0] get_url = url + "/tasks/" + task_id + self.path req = RunMain().run_main(self.method, get_url, self.query.encode('utf-8')) data = json.loads(req.text) res = json.dumps(data, ensure_ascii=False, indent=1) print("url:" + get_url + "\n" + "query:\n" + self.query) print("\n接口返回数据:\n\n" + res + "\n") self.assertEqual(req.status_code, self.status_code) self.assertEqual(data['code'], self.code) self.assertEqual(data['msg'], self.msg) self.assertEqual(data['data']['commit'], self.commit) time.sleep(1) print("结果数据为:\n" + str(req.status_code) + "," + str(data['code']) + "," + str(data['msg']) + "," + str(data['data']['commit'])) print("基线数据为:\n" + str(self.status_code) + "," + str(self.code) + "," + str(self.msg) + "," + str(self.commit) + "\n") else: get_url = url + self.path req = RunMain().run_main(self.method, get_url, self.query) data = json.loads(req.text) res = json.dumps(data, ensure_ascii=False, indent=1) print("url:" + get_url + "\n" + "query:\n" + self.query) print("\n接口返回数据:\n\n" + res + "\n") self.assertEqual(req.status_code, self.status_code) self.assertEqual(data['code'], self.code) self.assertEqual(data['msg'], self.msg) self.assertEqual(eval(self.content), self.content_text) print("结果数据为:\n" + str(req.status_code) + "," + str(data['code']) + "," + str(data['msg']) + "," + str(eval(self.content))) print("基线数据为:\n" + str(self.status_code) + "," + str(self.code) + "," + str(self.msg) + "," + str(self.content_text) + "\n") logger.info(req) logger.info(str(self.case_name)) logger.info(data) # print(res) return res
# -*- coding:utf-8 -*- # @Time : 2019/7/10 10:23 # @Author: dongyani # @interfacetest: http://apiv1.starschina.com/cms/v1.0/funtv/accesskey import requests, unittest from common.AES_CBC import AES_CBC from readConfig import ReadConfig import common.url as url from common.configHttp import RunMain baseurl = url.baseurl() version = ReadConfig().get_app("version") app_key = ReadConfig().get_app("app_key") funtv_version = ["8.0.1", "8.0.2", "8.0.3", "8.0.4", "8.0.5", "8.0.6"] headers = RunMain().headers_get() aes = AES_CBC() class funtv_accesskey(unittest.TestCase): """测试风行缓存接口""" def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) self.url = baseurl + "/cms/v1.0/funtv/accesskey" def get_url_param(self): # cp: fiag64t; secret_key: !N6nYXm9i@V 这两个参数是必传的 data = '{"cp":"fiag64t",' \ '"secret_key":"!N6nYXm9i@V",' \ '"app_version":"%(version)s",' \
def test_login(self, reqdata, respdata): response = RunMain().run_main('post', url, reqdata) print('实际结果为:', response) print('*' * 30) print('预期结果为:', respdata) assert response['reason'] == respdata['reason']
def test_checkResult(self): cu.execute(self.sql) da = cu.fetchall() # print(len(data[0][0])) # if len(da[0][0]) != 0: # else: # print("没有查到数据") # # cu.close() if self.case_name == "任务详情": task_id = da[0][0] get_url = url + self.path + "/" + task_id req = RunMain().run_main(self.method, get_url, self.query) data = json.loads(req.text) res = json.dumps(data, ensure_ascii=False, indent=1) print("url:" + get_url + "\n" + "query:\n" + self.query) print("\n接口返回数据:\n\n" + res + "\n") self.assertEqual(req.status_code, self.status_code) self.assertEqual(data['code'], self.code) self.assertEqual(data['msg'], self.msg) self.assertEqual(data['data']['status'], self.status) self.assertEqual(eval(self.reliys), self.comment) self.assertEqual(eval(self.task_node), self.tasknodenum) time.sleep(1) print("结果数据为:\n" + str(req.status_code) + "," + str(data['code']) + "," + str(data['msg']) + "," + str(data['data']['status']) + "," + str(eval(self.reliys)) + "," + str(eval(self.task_node))) print("基线数据为:\n" + str(self.status_code) + "," + str(self.code) + "," + str(self.msg) + "," + str(self.status) + "," + str(self.comment) + "," + str(self.tasknodenum) + "\n") elif self.case_name.startswith("修改后"): uuid = da[0][0] flow_id = da[1][0] get_url = url + self.path get_query = json.dumps(dict(eval(self.query))) req = RunMain().run_main(self.method, get_url, get_query.encode('utf-8')) data = json.loads(req.text) res = json.dumps(data, ensure_ascii=False, indent=1) print("url:" + get_url + "\n" + "query:\n" + self.query) print("\n接口返回数据:\n\n" + res + "\n") self.assertEqual(req.status_code, self.status_code) self.assertEqual(data['code'], self.code) self.assertEqual(data['msg'], self.msg) time.sleep(1) print("结果数据为:\n" + str(req.status_code) + "," + str(data['code']) + "," + str(data['msg'])) print("基线数据为:\n" + str(self.status_code) + "," + str(self.code) + "," + str(self.msg) + "\n") else: task_id = da[0][0] get_url = url + "/tasks/" + task_id + self.path req = RunMain().run_main(self.method, get_url, self.query.encode('utf-8')) data = json.loads(req.text) res = json.dumps(data, ensure_ascii=False, indent=1) print("url:" + get_url + "\n" + "query:\n" + self.query) print("\n接口返回数据:\n\n" + res + "\n") self.assertEqual(req.status_code, self.status_code) self.assertEqual(data['code'], self.code) self.assertEqual(data['msg'], self.msg) self.assertEqual(data['data']['commit'], self.commit) time.sleep(1) print("结果数据为:\n" + str(req.status_code) + "," + str(data['code']) + "," + str(data['msg']) + "," + str(data['data']['commit'])) print("基线数据为:\n" + str(self.status_code) + "," + str(self.code) + "," + str(self.msg) + "," + str(self.commit) + "\n") logger.info(req) logger.info(str(self.case_name)) logger.info(data) return res
def test_imageStyle(self): """ 图片样式 """ # # 添加 # self.method = 'post' # self.path = '/oss' # self.headers = { # 'uco-user-id': readconfig.get_headers('uco-user-id'), # 'uco-user-name': readconfig.get_headers('uco-user-name') # } # self.params = { # 'Action': 'setImagestyle' # } # self.body = { # 'styleCode': 'image/rotate,17', # 'styleName': 'liyutest1126', # 'bucketName': bucketName, # 'bucketDomain': bucketName + '.' + endpoint, # # } # new_url = url + self.path # info = RunMain().run_main(self.method, url=new_url, data=self.params, body=self.body, headers=self.headers) # ss = json.loads(info) # 将响应转换为字典格式 # self.assertEqual(ss['code'], '0') # # # 修改 # # 测试数据准备 # self.method = 'post' # self.path = '/oss' # self.headers = { # 'uco-user-id': readconfig.get_headers('uco-user-id'), # 'uco-user-name': readconfig.get_headers('uco-user-name') # } # self.params = { # 'Action': 'resetImageStyle' # } # self.body = { # 'styleCode': 'image/rotate,12/resize,m_lfit,h_401,limit_0', # 'styleName': 'liyutest11261559', # 'bucketName': bucketName, # 'bucketDomain': bucketName + '.' + endpoint, # # } # new_url = url + self.path # info = RunMain().run_main(self.method, url=new_url, data=self.params, body=self.body, headers=self.headers) # ss = json.loads(info) # 将响应转换为字典格式 # self.assertEqual(ss['code'], '0') # 获取 # 测试数据准备 self.method = 'get' self.path = '/oss' self.headers = { 'uco-user-id': readconfig.get_headers('uco-user-id'), 'uco-user-name': readconfig.get_headers('uco-user-name') } self.params = { 'Action': 'getImageStyle', 'page': '1', 'size': '10', 'bucketName': bucketName, 'bucketDomain': bucketName + '.' + endpoint } new_url = url + self.path info = RunMain().run_main(self.method, url=new_url, data=self.params, headers=self.headers) ss = json.loads(info) # 将响应转换为字典格式 self.assertEqual(ss['code'], '0')
def test_orderstatus_02(self): """headers没有token""" response = requests.get(self.get_url_params(), headers=RunMain().headers_get()) assert response.json()['err_code'] == 500
def checkResult(self): # 断言 new_url = url + self.path info = RunMain().run_main(self.method, new_url, json.loads(self.query)) # 根据Excel中的method调用run_main来进行requests请求,并拿到响应 ss = json.loads(info) # 将响应转换为字典格式 if self.case_name == 'order_class': # 如果case_name是login,说明合法,返回的code应该为200 self.assertEqual(ss['token_type'], "bearer")
def checkResult(self): # 断言 """ check test result :return: """ #------使用eval方法将参数str类型转换为dict global ss data = eval(self.query) bodyType = self.bady_type headers = self.header url1 = url + self.path try: # 根据Excel中的method调用run_main来进行requests请求,并拿到响应 info = RunMain().run_main(self.method, url1, data, headers, bodyType) ss = json.loads(info) # 将响应转换为字典格式 except: print('请求结果转换json失败') if self.case_name == 'applyCarAttend': self.assertEqual(ss[self.assertKey], self.code) G.applyId = ss['data'] print(G.applyId) key = 'apply_progress' table = 'vehicle_license_apply_info' conditions = 'id' value = G.applyId a = configDB.DBsql( readConfig.ReadConfig().get_content('DATABASE', 'host'), readConfig.ReadConfig().get_content('DATABASE', 'user'), readConfig.ReadConfig().get_content('DATABASE', 'password'), readConfig.ReadConfig().get_content('DATABASE', 'databaseCar')).Select( key, table, conditions, value) self.assertIn('1', str(a)) elif self.case_name == 'getCarList': self.assertEqual(ss[self.assertKey], self.code) self.assertEqual(ss['success'], True) elif self.case_name == 'updateType3': self.assertEqual(ss[self.assertKey], self.code) key = 'apply_progress' table = 'vehicle_license_apply_info' conditions = 'id' value = G.applyId a = configDB.DBsql( readConfig.ReadConfig().get_content('DATABASE', 'host'), readConfig.ReadConfig().get_content('DATABASE', 'user'), readConfig.ReadConfig().get_content('DATABASE', 'password'), readConfig.ReadConfig().get_content('DATABASE', 'databaseCar')).Select( key, table, conditions, value) self.assertIn('3', str(a)) elif self.case_name == 'updateType4': self.assertEqual(ss[self.assertKey], self.code) key = 'apply_progress' table = 'vehicle_license_apply_info' conditions = 'id' value = G.applyId a = configDB.DBsql( readConfig.ReadConfig().get_content('DATABASE', 'host'), readConfig.ReadConfig().get_content('DATABASE', 'user'), readConfig.ReadConfig().get_content('DATABASE', 'password'), readConfig.ReadConfig().get_content('DATABASE', 'databaseCar')).Select( key, table, conditions, value) self.assertIn('4', str(a)) elif self.case_name == 'updateType4': self.assertEqual(ss[self.assertKey], self.code) elif self.case_name == 'getUserList': self.assertEqual(ss[self.assertKey], self.code) self.assertNotEqual(len(ss['data']), 0) elif self.case_name == 'end': table = 'vehicle_license_apply_info' conditions = 'id' value = G.applyId configDB.DBsql( readConfig.ReadConfig().get_content('DATABASE', 'host'), readConfig.ReadConfig().get_content('DATABASE', 'user'), readConfig.ReadConfig().get_content('DATABASE', 'password'), readConfig.ReadConfig().get_content('DATABASE', 'databaseCar')).Delete( table, conditions, value)
def test_checkResult(self): cu.execute(self.sql) da = cu.fetchall() if self.case_name == "项目详情": project_id = da[0][0] get_url = url + self.path + "?id=" + project_id req = RunMain().run_main(self.method, get_url, self.query) data = json.loads(req.text) res = json.dumps(data, ensure_ascii=False, indent=1) print("url:" + get_url + "\n" + "query:\n" + self.query) print("\n接口返回数据:\n\n" + res + "\n") self.assertEqual(req.status_code, self.status_code) self.assertEqual(data['code'], self.code) self.assertEqual(data['msg'], self.msg) self.assertEqual(data['data']['taskEntity']['title'], self.title) print("结果数据为:\n" + str(req.status_code) + "," + str(data['code']) + "," + str(data['msg']) + "," + str(data['data']['taskEntity']['title'])) print("基线数据为:\n" + str(self.status_code) + "," + str(self.code) + "," + str(self.msg) + "," + str(self.title) + "\n") elif self.case_name == "项目子任务详情": task_id1 = da[0][0] category_id = da[1][0] get_url = url + self.path + "/" + task_id1 req = RunMain().run_main(self.method, get_url, self.query) data = json.loads(req.text) res = json.dumps(data, ensure_ascii=False, indent=1) print("url:" + get_url + "\n" + "query:\n" + self.query) print("\n接口返回数据:\n\n" + res + "\n") self.assertEqual(req.status_code, self.status_code) self.assertEqual(data['code'], self.code) self.assertEqual(data['msg'], self.msg) self.assertEqual(float(category_id), self.category) self.assertEqual(data['data']['title'], self.title) print("结果数据为:\n" + str(req.status_code) + "," + str(data['code']) + "," + str(data['msg']) + "," + str(float(category_id)) + "," + str(data['data']['title'])) print("基线数据为:\n" + str(self.status_code) + "," + str(self.code) + "," + str(self.msg) + "," + str(self.category) + "," + str(self.title) + "\n") elif self.case_name == "项目子任务_任务详情": task_id = da[0][0] get_url = url + self.path + "/" + task_id req = RunMain().run_main(self.method, get_url, self.query) data = json.loads(req.text) res = json.dumps(data, ensure_ascii=False, indent=1) print("url:" + get_url + "\n" + "query:\n" + self.query) print("\n接口返回数据:\n\n" + res + "\n") self.assertEqual(req.status_code, self.status_code) self.assertEqual(data['code'], self.code) self.assertEqual(data['msg'], self.msg) self.assertEqual(data['data']['status'], self.status) self.assertEqual(eval(self.reliys), self.comment) self.assertEqual(eval(self.task_node), self.tasknodenum) time.sleep(1) print("结果数据为:\n" + str(req.status_code) + "," + str(data['code']) + "," + str(data['msg']) + "," + str(data['data']['status']) + "," + str(eval(self.reliys)) + "," + str(eval(self.task_node))) print("基线数据为:\n" + str(self.status_code) + "," + str(self.code) + "," + str(self.msg) + "," + str(self.status) + "," + str(self.comment) + "," + str(self.tasknodenum) + "\n") else: task_id = da[0][0] get_url = url + "/tasks/" + task_id + self.path req = RunMain().run_main(self.method, get_url, self.query.encode('utf-8')) data = json.loads(req.text) res = json.dumps(data, ensure_ascii=False, indent=1) print("url:" + get_url + "\n" + "query:\n" + self.query) print("\n接口返回数据:\n\n" + res + "\n") self.assertEqual(req.status_code, self.status_code) self.assertEqual(data['code'], self.code) self.assertEqual(data['msg'], self.msg) self.assertEqual(data['data']['commit'], self.commit) time.sleep(1) print("结果数据为:\n" + str(req.status_code) + "," + str(data['code']) + "," + str(data['msg']) + "," + str(data['data']['commit'])) print("基线数据为:\n" + str(self.status_code) + "," + str(self.code) + "," + str(self.msg) + "," + str(self.commit) + "\n") logger.info(req) logger.info(str(self.case_name)) logger.info(data) return res