def test_voiceprint_dia_download(self): content = Test_get_Nonce().test_get_nonces() appid = str(content[0]) # print(appid) result_id = Test_voiceprints_dia_result().test_voiceprint_dia_result() resultid = result_id[0] access_token = Test_get_Token().test_get_tokens() # group_id=Test_get_Group().test_get_groups() config = readConfigFile.ReadConfig() browser = config.get_http("browserName") self.url = browser + "/api/app/voiceprint/dia/download" self.headers = { "appid": appid, "access-token": access_token, "fileid": resultid } response = requests.post(url=self.url, headers=self.headers, verify=False) print(response.content) with open(filepath, "wb") as code: code.write(response.content)
def test_asr_file(self): content = Test_get_Nonce().test_get_nonces() appid = str(content[0]) file = Test_file_upload().test_file_upload_dia() fileid=file[0] # print(appid) # task_id=Test_voiceprints_dia().test_voiceprint_dia() access_token=Test_get_Token().test_get_tokens() # print(access_token) # group_id=Test_get_Group().test_get_groups() config = readConfigFile.ReadConfig() browser = config.get_http("browserName") excel = ReadExcel("asr_file") data = excel.getData state_code = excel.getStatusCode # url = excel.getUrl # print(url) method = excel.getMethod row = excel.getRows buer = excel.getEncryption status = excel.getStatus self.url=browser+"/api/app/asr/file" t = testApi() for i in range(0, row - 1): if status[i] == '执行': dict_data = eval(data[i]) buer_i = int(buer[i]) response = t.http_request(url=self.url, data=dict_data, method=method[i], encryption=buer_i, ) print(response.text) result = response.json()["flag"] self.assertEqual(result, bool(state_code[i])) if result == bool(state_code[i]): RESULT = 'PASS' else: RESULT = 'FAIL' excel.result_write(str(RESULT)) # result_id=response.json()["data"]["result_list"][0]["result_id"] # return result_id else: print('你规定不执行') mylog.info("测试完成")
def test_client_gets(self): content = Test_get_Nonce().test_get_nonces() appid = str(content[0]) # print(appid) access_token=Test_get_Token().test_get_tokens() groupid=Test_Group_create().test_groups_create() # print(groupid) clientid = Test_client_Create().test_client_create() config = readConfigFile.ReadConfig() browser = config.get_http("browserName") excel = ReadExcel("get_client") data = excel.getData state_code = excel.getStatusCode # url = excel.getUrl # print(url) method = excel.getMethod row = excel.getRows buer = excel.getEncryption status = excel.getStatus self.url=browser+"/api/app/client/get" # t = testApi() t = testApi() for i in range(0, row - 1): if status[i] == '执行': dict_data = eval(data[i]) buer_i = int(buer[i]) response = t.http_request(url=self.url, data=dict_data, method=method[i], encryption=buer_i, ) # print(response.text) result = response.json()["flag"] self.assertEqual(result, bool(state_code[i])) if result == bool(state_code[i]): RESULT = 'PASS' else: RESULT = 'FAIL' excel.result_write(str(RESULT)) else: print('你规定不执行') mylog.info("测试完成")
def test_thresholds_set(self): content = Test_get_Nonce().test_get_nonces() appid = str(content[0]) # print(appid) access_token=Test_get_Token().test_get_tokens() # group_id=Test_get_Group().test_get_groups() config = readConfigFile.ReadConfig() browser = config.get_http("browserName") excel = ReadExcel("threshold_set") data = excel.getData state_code = excel.getStatusCode # url = excel.getUrl # print(url) method = excel.getMethod row = excel.getRows buer = excel.getEncryption status = excel.getStatus self.url=browser+"/api/app/voiceprint/threshold/set" self.data={ "appid":appid, "access_token":access_token, "model_type":"model_long", "threshold": 0.6 } # t = testApi() t = testApi() for i in range(0, row - 1): if status[i] == '执行': dict_data = eval(data[i]) buer_i = int(buer[i]) response = t.http_request(url=self.url,data=dict_data,method=method[i], encryption=buer_i,) print(response.text) result = response.json()["flag"] self.assertEqual(result, bool(state_code[i])) if result == bool(state_code[i]): RESULT = 'PASS' else: RESULT = 'FAIL' excel.result_write(str(RESULT)) else: print('你规定不执行')
def test_file_upload_dia(self): content = Test_get_Nonce().test_get_nonces() appid = str(content[0]) # print(appid) access_token = Test_get_Token().test_get_tokens() # group_id=Test_get_Group().test_get_groups() config = readConfigFile.ReadConfig() browser = config.get_http("browserName") self.url = browser + "/api/app/voiceprint/upload" file_path_list = [file01, file02] files = {} for i in range(len(file_path_list)): files["file%s" % str(i)] = ("file%s" % str(i), open(file_path_list[i], "rb")) # files={ # "file1": ("1562115305.wav", open(file01, "rb"), "audio/wav"), # # } self.headers = {"user-agent": "PostmanRuntime/7.1.5"} self.data = { "appid": appid, "access_token": access_token, "media_type": "wav", "model_type": "model_number_8k", } response = requests.post(url=self.url, headers=self.headers, data=self.data, files=files, verify=False) # print(response.text) result = response.json()["flag"] self.assertEqual(result, True) file_id_list = [] if not response: pass else: data = response.json()["data"] file_info_list = data["list"] for i in range(len(file_info_list)): file_info = file_info_list[i] file_id_list.append(file_info["fileid"]) # print(file_id_list) return file_id_list
def test_voiceprint_dia_result(self,interval = 4, time_out = 60): content = Test_get_Nonce().test_get_nonces() appid = str(content[0]) # print(appid) task_id=Test_voiceprints_dia().test_voiceprint_dia() access_token=Test_get_Token().test_get_tokens() # print(access_token) # group_id=Test_get_Group().test_get_groups() config = readConfigFile.ReadConfig() browser = config.get_http("browserName") excel = ReadExcel("dia_result") data = excel.getData state_code = excel.getStatusCode # url = excel.getUrl # print(url) method = excel.getMethod row = excel.getRows buer = excel.getEncryption status = excel.getStatus self.url=browser+"/api/app/voiceprint/dia/result" t = testApi() for i in range(0, row - 1): if status[i] == '执行': dict_data = eval(data[i]) buer_i = int(buer[i]) start_time = time.time() end_time = start_time + time_out count = 1 while time.time() < end_time: response = t.http_request(url=self.url,data=dict_data,method=method[i], encryption=buer_i) count += 1 time.sleep(interval) if response.json()["data"]["result_list"]: break else: return None # print(response.text) result = response.json()["flag"] self.assertEqual(result, True) result_id_list = [] if not response: pass else: data = response.json()["data"] file_info_list = data["result_list"] for i in range(len(file_info_list)): file_info = file_info_list[i] result_id_list.append(file_info["result_id"]) # print(result_id_list) return result_id_list else: print('你规定不执行') mylog.info("测试完成")
def test_get_tokens(self): content=Test_get_Nonce().test_get_nonces() # print(content) timestamp=int(content[3]) # print(timestamp) nonce=str(content[2]) appid=str(content[0]) h=SHA256.new() content.sort() h.update("".join(content).encode("utf8")) signature = h.hexdigest() # print(type(signature)) config = readConfigFile.ReadConfig() browser=config.get_http("browserName") excel = ReadExcel("token") data = excel.getData state_code = excel.getStatusCode # url = excel.getUrl # print(url) method = excel.getMethod row = excel.getRows buer=excel.getEncryption status=excel.getStatus self.url=browser+"/api/app/auth/token/get" # t = testApi() t = testApi() try: for i in range(0, row - 1): if status[i] == '执行': dict_data = eval(data[i]) buer_i = int(buer[i]) response = t.http_request(url=self.url, data=dict_data, method=method[i], encryption=buer_i, ) # print(response.text) result = response.json()["flag"] self.assertEqual(result, bool(state_code[i])) if result == bool(state_code[i]): RESULT = 'PASS' else: RESULT = 'FAIL' excel.result_write(str(RESULT)) access_token = response.json()["data"]["access_token"] # print(access_token) return access_token else: print('你规定不执行') except Exception as e: print(e)
class Mysql(object): config = readConfigFile.ReadConfig() host = config.get_db("host") port = config.get_db("port") username = config.get_db("username") password = config.get_db("password") database = config.get_db("database") port = int(port) def get_db_conn(self): connection = pymysql.connect(host=self.host, port=self.port, user=self.username, passwd=self.password, db=self.database, charset='utf8', cursorclass=pymysql.cursors.DictCursor) return connection # try: # cursor = connection.cursor() # sql = sql # cursor.execute(sql) # results = cursor.fetchall() # for data in results: # return data # # except Exception: # print("失败") # cursor.close() # connection.close() def query_db(self, sql): conn = Mysql().get_db_conn() # 获取连接 cur = conn.cursor() # 建立游标 cur.execute(sql) # 执行sql result = cur.fetchall() # 获取所有查询结果 cur.close() # 关闭游标 conn.close() # 关闭连接 return result # 返回结果 # 封装更改数据库操作 def change_db(self, sql): conn = Mysql().get_db_conn() # 获取连接 cur = conn.cursor() # 建立游标 try: cur.execute(sql) # 执行sql conn.commit() # 提交更改 except Exception as e: conn.rollback() # 回滚 finally: cur.close() # 关闭游标 conn.close() # 关闭连接 # 封装常用数据库操作 def check_user(self, sql): # 注意sql中''号嵌套的问题 # sql = "select * from user where name = '{}'".format(name) result = Mysql().query_db(sql) return True if result else False def add_user(self, sql): # sql = "insert into user (name, passwd) values ('{}','{}')".format(name, password) Mysql().change_db(sql) def del_user(self, sql): # sql = "delete from user where name='{}'".format(name) Mysql().change_db(sql)
# coding: UTF-8 import sys sys.path.append("..") import json import unittest import requests from framework import readConfigFile from framework.logger import Logger config = readConfigFile.ReadConfig() mylog = Logger(logger="SearchResultPage").getlog() class SearchResultPage(unittest.TestCase): @classmethod def setUp(cls): cls.host = config.get_http("baseurl") cls.url = cls.host + "/web/basic/appquery" cls.data = { "appdevice": { "userid": "", "token": "" }, "params": { "text": "", "version": "v1.0", "size": 20, "page": 1, } }
def test_get_nonces(self): config = readConfigFile.ReadConfig() browser=config.get_http("browserName") excel = ReadExcel("nonce") data = excel.getData state_code = excel.getStatusCode # url = excel.getUrl # print(url) method = excel.getMethod row = excel.getRows buer = excel.getEncryption status = excel.getStatus url = browser+"/api/app/auth/get" t = testApi() try: for i in range(0, row - 1): if status[i] == '执行': dict_data = eval(data[i]) buer_i = int(buer[i]) response = t.http_request(url=url, data=dict_data, method=method[i], encryption=buer_i, ) # print(response.text) result = response.json()["flag"] self.assertEqual(result, bool(state_code[i])) if result == bool(state_code[i]): RESULT = 'PASS' else: RESULT = 'FAIL' excel.result_write(str(RESULT)) nonce = response.json()["data"]["nonce"] # print(nonce) timestamp = response.json()["data"]["timestamp"] # print(timestamp) appid = response.json()["data"]["appid"] # print(appid) appSecret = "7f245af79296093778d40c1bba2caa88" content = [appid, appSecret, nonce, str(timestamp)] return content else: print('你规定不执行') except Exception as e: print(e) mylog.info("测试完成")