class GetData: def __init__(self, file_name=None, sheet_id=None): self.file_name = file_name self.sheet_id = sheet_id self.opera_excel = OperationExcel(self.file_name, self.sheet_id) #实例化 #去获取excel行数,就是我们的case个数 def get_case_lines(self): return self.opera_excel.get_lines() #获取是否加入cookie def get_cookie(self, row): col = int(get_cookie()) #获取cookie所在的列数 url = self.opera_excel.get_cell_value(row, col) #获取指定单元格的内容 return url # 获取url def get_url(self, row): col = int(get_url()) #获取url所在的列数 url = self.opera_excel.get_cell_value(row, col) #获取指定单元格的内容 return url #获取testxpath def get_testxpath(self, row): col = int(get_testxpath()) #获取testxpath所在的列数 testxpath = self.opera_excel.get_cell_value(row, col) #获取指定单元格的内容 return testxpath #获取preresult def get_preresult(self, row): col = int(get_preresult()) #获取preresult所在的列数 preresult = self.opera_excel.get_cell_value(row, col) #获取指定单元格的内容 return preresult #写入testresult def write_testresult(self, row, value): col = int(get_testresult()) #获取testresult所在的列数 self.opera_excel.write_value(row, col, value) #向指定的单元格写入内容 #写入testdescription def write_testdescription(self, row, value): col = int(get_testdescription()) #获取testdescription所在的列数 self.opera_excel.write_value(row, col, value) #向指定的单元格写入内容 #判断是否加入cookie def is_cookie(self, row): cookie = self.get_cookie(row) if cookie == 'yes': return True else: return False
class GetData(object): """这是GetData""" def __init__(self): self.op_excel = OperationExcel() self.op_json = OperationJson() def get_case_lines(self): return self.op_excel.get_line_length() def get_request_url(self, row): col = global_var.get_col_url() return self.op_excel.get_cell_value(row, col) def get_request_method(self, row): col = global_var.get_col_method() return self.op_excel.get_cell_value(row, col) def get_request_data(self, row): col = global_var.get_col_data() return self.op_excel.get_cell_value(row, col) def get_is_run(self, row): col = global_var.get_col_run() return self.op_excel.get_cell_value(row, col) # 根据关键字获取请求数据json def get_request_data_by_json(self, row): key = self.get_request_data(row) return self.op_json.get_data(key) def get_header(self, row): col = global_var.get_col_header() return self.op_excel.get_cell_value(row, col) def get_expect_result(self, row): col = global_var.get_col_expect() return self.op_excel.get_cell_value(row, col) def write_actual_result(self, row, result): col = global_var.get_col_actual() return self.op_excel.write_cell_value(row, col, result)
class GetData: def __init__(self): self.oper_excel = OperationExcel() # 获取用例个数 def get_case_lines(self): return self.oper_excel.get_lines() # 获取是否执行 def get_is_run(self, row): flag = None col = int(data_config.global_var.get_run()) run_model = self.oper_excel.get_cell_value(row, col) if run_model == 'yes': flag = True else: flag = False return flag # 获取请求方式 def get_request_method(self, row): col = int(data_config.global_var.get_request_type()) request_method = self.oper_excel.get_cell_value(row, col) return request_method def get_requset_url(self, row): col = int(data_config.global_var.get_url()) requset_url = self.oper_excel.get_cell_value(row, col) return requset_url #获取请求数据 def get_request_data(self, row): col = int(data_config.global_var.get_request_data()) data = self.oper_excel.get_cell_value(row, col) if data == '': return None return data # -------------------------------------------------------------------- # 通过获取请求关键字拿到data数据 '''def get_data_value(self,row): oper_json = OperationJson('../dataconfig/request_data.json') request_data = oper_json.get_data(self.get_request_data(row)) return request_data''' #获取预期结果 def get_expect_data(self, row): col = int(data_config.global_var.get_expect()) expect = self.oper_excel.get_cell_value(row, col) return expect #写入数据 def write_result(self, row, value): col = int(data_config.global_var.get_result()) self.oper_excel.write_value(row, col, value) #获取依赖数据的key '''def get_depend_key(self,row): col = int(data_config.get_data_depend()) depend_key = self.oper_excel.get_cell_value(row,col) if depend_key == '': return None else: return depend_key''' #判断是否有case依赖 '''def is_depend(self,row): col = int(data_config.get_case_depend()) depend_case_id = self.oper_excel.get_cell_value(row,col) if depend_case_id == '': return None else: return depend_case_id''' #获取请求依赖字段 '''def get_depend_field(self,row):
class GetData: def __init__(self): self.opera_excel = OperationExcel() # 去获取excel行数,就是我们的case个数 def get_case_lines(self): return self.opera_excel.get_lines() # 获取是否执行 def get_is_run(self, row): flag = None col = int(dataconfig.get_run()) run_model = self.opera_excel.get_cell_value(row, col) if run_model == 'yes': flag = True else: flag = False return flag # 是否携带header def is_header(self, row): col = int(dataconfig.get_header()) header = self.opera_excel.get_cell_value(row, col) if header != '': return header else: return None # 获取请求方式 def get_request_method(self, row): col = int(dataconfig.get_run_way()) request_method = self.opera_excel.get_cell_value(row, col) return request_method # 获取url def get_request_url(self, row): col = int(dataconfig.get_url()) url = self.opera_excel.get_cell_value(row, col) return url # 获取请求数据 def get_request_data(self, row): col = int(dataconfig.get_data()) data = self.opera_excel.get_cell_value(row, col) if data == '': return None return data # 通过获取关键字拿到data数据 def get_data_for_json(self, row): opera_json = OperetionJson() request_data = opera_json.get_data(self.get_request_data(row)) return request_data # 获取预期结果 def get_expcet_data(self, row): col = int(dataconfig.get_expect()) expect = self.opera_excel.get_cell_value(row, col) if expect == '': return None return expect # 通过sql获取预期结果 def get_expcet_data_for_mysql(self, row): op_mysql = OperationMysql() sql = self.get_expcet_data(row) res = op_mysql.search_one(sql) return res.decode('unicode-escape') def write_result(self, row, value): col = int(dataconfig.get_result()) self.opera_excel.write_value(row, col, value) # 获取依赖数据的key def get_depend_key(self, row): col = int(dataconfig.get_data_depend()) depent_key = self.opera_excel.get_cell_value(row, col) if depent_key == "": return None else: return depent_key # 判断是否有case依赖 def is_depend(self, row): col = int(dataconfig.get_case_depend()) depend_case_id = self.opera_excel.get_cell_value(row, col) if depend_case_id == "": return None else: return depend_case_id # 获取数据依赖字段 def get_depend_field(self, row): col = int(dataconfig.get_field_depend()) data = self.opera_excel.get_cell_value(row, col) if data == "": return None else: return data
class GetData: def __init__(self): self.opera_excel = OperationExcel() self.opera_json = OperationJson() #获取excel行数, def get_case_lines(self): return self.opera_excel.get_lines() #获取是否执行 def get_is_run(self, row): flag = None col = int(data_config.get_run()) run_model = self.opera_excel.get_cell_value(row, col) if run_model == 'yes': flag = True else: flag = False return flag #是否携带hearder def is_header(self, row): col = int(data_config.get_header()) header = self.opera_excel.get_cell_value(row, col) if header == 'yes': headerJson = data_config.get_header_value() return headerJson else: return None #获取请求方式 def get_request_method(self, row): col = int(data_config.get_run_way()) request_method = self.opera_excel.get_cell_value(row, col) return request_method #获取url def get_request_url(self, row): col = int(data_config.get_url()) url = self.opera_excel.get_cell_value(row, col) return url #获取请求数据 def get_request_data(self, row): col = int(data_config.get_data()) data = self.opera_excel.get_cell_value(row, col) if data == '': return None return data #通过获取关键字拿到data数据 def get_data_for_json(self, row): res = self.get_request_data(row) request_data = self.opera_json.get_data(res) return request_data #获取预期结果 def get_expcet_data(self, row): col = int(data_config.get_expect()) expect = self.opera_excel.get_cell_value(row, col) if expect == '': return None else: return expect #结果写入 def write_res(self, row, value): col = int(data_config.get_result_value()) self.opera_excel.write_value(row, col, value) #状态写入 def write_status(self, row, value): col = int(data_config.get_result()) self.opera_excel.write_value(row, col, value) def get_case_depend(self, row): case_col = int(data_config.get_case_depend()) case = self.opera_excel.get_cell_value(row, case_col) rowRes = self.opera_excel.get_cell_row(case) res = None if rowRes: result_col = int(data_config.get_result_value()) resData = self.opera_excel.get_value(rowRes, result_col) if resData: resData = json.loads(resData) data_col = int(data_config.get_data_depend()) data = self.opera_excel.get_cell_value(row, data_col) field_col = int(data_config.get_field_depend()) field = self.opera_excel.get_cell_value(row, field_col) if field: res = resData[data][field] else: res = resData[data] return res
class GetData(): def __init__(self, file_path=None, sheet_id=None): self.oper_excel = OperationExcel() self.oper_json = OperationJson( os.path.join(os.getcwd(), 'request_data.json')) def get_case_id(self, row): col = int(ExcelCol.get_id()) case_id = self.oper_excel.get_cell_value(row, col) return case_id def get_nrows(self): return self.oper_excel.get_nrows() def get_is_run(self, row): flag = None col = int(ExcelCol.get_is_run()) is_run = self.oper_excel.get_cell_value(row, col) if is_run == 'yes': flag = True else: flag = False return flag def get_url(self, row): col = int(ExcelCol.get_url()) url = self.oper_excel.get_cell_value(row, col) return url def get_request_data(self, row): col = int(ExcelCol.get_request_data()) json_key = self.oper_excel.get_cell_value(row, col) json_value = self.oper_json.get_json_value(json_key) return json_value def get_request_method(self, row): col = int(ExcelCol.get_request_method()) request_method = self.oper_excel.get_cell_value(row, col) return request_method def get_header(self, row): col = int(ExcelCol.get_header()) header = self.oper_excel.get_cell_value(row, col) if header == None: return None else: return header def get_expect(self, row): col = int(ExcelCol.get_expect()) expect = self.oper_excel.get_cell_value(row, col) # expect_db = OperationDB(expect) return expect def get_depend_key(self, row): col = int(ExcelCol.get_field_id()) depend_key = self.oper_excel.get_cell_value(row, col) return depend_key def get_field_key(self, row): col = int(ExcelCol.get_field_data()) field_key = self.oper_excel.get_cell_value(row, col) return field_key def get_field_data_id(self, row): col = int(ExcelCol.get_field_data_id()) field_data_id = self.oper_excel.get_cell_value(row, col) return field_data_id def write_res(self, row, res): col = int(ExcelCol.get_result()) self.oper_excel.write_result(row, col, res) def get_expect_by_case(self, row): oper_db = OperationDB(self.get_case_id(row)) expect_db = oper_db.search_one() return expect_db # 根据依赖case_id获取到要执行的用例id的行号 def get_depend_line(self, case_id): num = 0 cols_data = self.get_col_datas() for col_data in cols_data: if case_id in col_data: return num num += 1 return num def get_row_values(self, row): return self.oper_excel.get_row_data(row) # 获取某一列的内容 def get_col_datas(self, col=None): col_datas = self.oper_excel.get_col_datas(col) return col_datas
class GetData: def __init__(self): self.opera_excel = OperationExcel() # 去获取excel行数,就是case的个数 def get_case_lines(self): return self.opera_excel.get_lines() # 获取是否执行 def get_is_run(self, row): self.flag = None col = int(data.data_config.get_run()) run_model = self.opera_excel.get_cell_value(row, col) if run_model == 'yes': flag = True else: flag = False return flag # 是否携带header def get_is_header(self, row): col = int(data.data_config.get_header()) header = self.opera_excel.get_cell_value(row, col) if header == 'yes': return data.data_config.get_header_value() else: return None # 获取请求方式 def get_request_method(self, row): col = int(data.data_config.get_request_way()) rquest_method = self.opera_excel.get_cell_value(row, col) return rquest_method # 获取url def get_request_url(self, row): col = int(data.data_config.get_url()) request_url = self.opera_excel.get_cell_value(row, col) return request_url # 获取请求数据 def get_request_data(self, row): col = int(data.data_config.get_data()) request_data = self.opera_excel.get_cell_value(row, col) if request_data == '': return None return request_data # 通过获取json关键字拿到数据 def get_data_for_json(self, row): opera_json = OperationJson() request_data = opera_json.get_data(self.get_request_data(row)) return request_data # 获取预期结果 def get_except_data(self, row): col = int(data.data_config.get_expect()) except_data = self.opera_excel.get_cell_value(row, col) if except_data == '': return None return except_data # 写入数据 def write_result(self, row, value): col = int(data.data_config.get_result()) self.opera_excel.write_value(row, col, value)
class GetData: def __init__(self): self.opeexcel = OperationExcel() self.ope_json = Operation_json() # 获取excel行数,也就是case的个数 def get_case_lines(self): return self.opeexcel.get_lines() # 获取是否执行 def get_is_run(self, row): isrun = self.opeexcel.get_cell_value(row, data_config.get_run()) if isrun == "是": flag = True else: flag = False return flag # 获取excel的请求参数,并去json文件中找到匹配的参数内容 def get_request_data(self, row): requestdata1 = self.opeexcel.get_cell_value(row, data_config.get_data()) # print(requestdata1) requestdata2 = self.ope_json.get_data(requestdata1) # (requestdata2) return requestdata2 # 获取接口地址 def get_url(self, row): return self.opeexcel.get_cell_value(row, data_config.get_url()) # 获取请求类型 def get_requestway(self, row): requestway = self.opeexcel.get_cell_value( row, data_config.get_request_way()) return requestway # 获取header def get_headers(self, row): headers = self.opeexcel.get_cell_value(row, data_config.get_headers()) headerss = self.ope_json.get_data(headers) return headerss # 获取cookies def get_cookies(self, row): cookies = self.opeexcel.get_cell_value(row, data_config.get_cookies()) cookiess = self.ope_json.get_data(cookies) return cookiess # 获取是否具有数据依赖 def get_is_depend(self, row): is_depend = self.opeexcel.get_cell_value(row, data_config.get_depend()) return is_depend # 获取预期结果 def get_expect_value(self, row): expect = self.opeexcel.get_cell_value(row, data_config.get_expect()) return expect # 取依赖case的id def get_depend_caseid(self, row): depend_caseid = self.opeexcel.get_cell_value( row, data_config.get_dependcaseid()) if depend_caseid != None: return depend_caseid else: return None # 获取依赖case执行结果中的依赖字段 def get_depend_field(self, row): depend_field = self.opeexcel.get_cell_value( row, data_config.get_dependfield()) if depend_field != None: return depend_field else: return None # 获取case本身被依赖的字段 def get_owe_field(self, row): owe_field = self.opeexcel.get_cell_value(row, data_config.get_owefield()) if owe_field != None: return owe_field else: return None
class GetData: def __init__(self): self.opera_excel = OperationExcel() #去获取excel行数,就是我们的case个数 def get_case_lines(self): return self.opera_excel.get_lines() #获取是否执行 def get_is_run(self, row): flag = None col = int(data_config.get_run()) run_model = self.opera_excel.get_cell_value(row, col) if run_model == 'yes': flag = True else: flag = False return flag def get_header_value(self): #api.at.top header = { 'Authorization': 'Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwczpcL1wvYXBpLmF0LnRvcFwvdjFcL2FjY291bnRcL3NpZ25pbiIsImlhdCI6MTU0MjAxMDM2OCwiZXhwIjoxNTczNTQ2MzY4LCJuYmYiOjE1NDIwMTAzNjgsImp0aSI6Im1zcERIMWVaTDM5SG9mazkiLCJzdWIiOiIzMyIsInBydiI6ImM4ZWUxZmM4OWU3NzVlYzRjNzM4NjY3ZTViZTE3YTU5MGI2ZDQwZmMifQ.0s8qGjniMd3INLbE9rg0NBiKXyp_b1K76M8ZyPrd_ZA' } return header #获取模块的名称 def get_request_name(self, row): col = int(data_config.get_request_name()) request_name = self.opera_excel.get_cell_value(row, col) return request_name #是否携带header def is_header(self, row): col = int(data_config.get_header()) header = self.opera_excel.get_cell_value(row, col) if header == 'yes': header = { 'Host': 'api.at.top', 'Connection': 'Keep-Alive', 'Accept-Encoding': 'gzip', 'User-Agent': 'okhttp/3.8.1', 'Authorization': 'Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwczpcL1wvYXBpLmF0LnRvcFwvdjFcL2FjY291bnRcL3NpZ25pbiIsImlhdCI6MTU0MjcxMDM2MywiZXhwIjoxNTc0MjQ2MzYzLCJuYmYiOjE1NDI3MTAzNjMsImp0aSI6Ijk4ZUtCb2gzaEV1SUE1ckgiLCJzdWIiOiIzMSIsInBydiI6ImM4ZWUxZmM4OWU3NzVlYzRjNzM4NjY3ZTViZTE3YTU5MGI2ZDQwZmMifQ.Ey2Ot4nRgH_fV8Q7D42aKoXH2NzzPYja6bedpBqaXI4', 'deviceid': 'ac:c1:ee:c0:33:34-ac:c1:ee:c0:33:34', 'getuiclientid': '5b9a0d6f110d2b136f9ca135d93fad06', 'platform': 'android', 'userid': '33', 'version': '2.1.0' } else: return None return header #获取请求方式 def get_request_method(self, row): col = int(data_config.get_run_way()) request_method = self.opera_excel.get_cell_value(row, col) return request_method #获取url def get_request_url(self, row): col = int(data_config.get_url()) url = self.opera_excel.get_cell_value(row, col) return url #获取请求数据 def get_request_data(self, row): col = int(data_config.get_data()) data = self.opera_excel.get_cell_value(row, col) if not data: return None return data #通过获取关键字拿到data数据 def get_data_for_json(self, row): if not row: return None opera_json = OperetionJson() request_data = opera_json.get_data(self.get_request_data(row)) # if not request_data: # return None # else: return request_data #获取预期结果 def get_expcet_data(self, row): col = int(data_config.get_expect()) expect = self.opera_excel.get_cell_value(row, col) # expect = expect.encode('utf-8') # print type(expect) if expect == '': return None return expect #写入数据 def write_result(self, row, value): col = int(data_config.get_result()) self.opera_excel.write_value(row, col, value) #获取caseid def get_number_id(self, row): col = int(data_config.get_id()) ID = self.opera_excel.get_cell_value(row, col) return ID
class GetData(): def __init__(self): self.oper_excel = OperationExcel() #获取case数 def get_case_lines(self): return self.oper_excel.get_lines() #获取是否执行case def is_run(self, row): flag = None col = get_run() run_model = self.oper_excel.get_cell_value(row, col) if run_model == 'yes': flag = True else: flag = False return flag #case是否携带header[优化] def is_header(self, row): col = get_header() header = self.oper_excel.get_cell_value(row, col) # if header == 'yes': # return get_header_value() # else: # return None return header #通过关键字获取header def get_header_for_json(self, row): opera_json = OperationJson() header = opera_json.get_data(self.is_header(row)) return header #case请求方式 def get_requst_method(self, row): col = get_request_way() request_method = self.oper_excel.get_cell_value(row, col) return request_method #case url def get_url(self, row): col = get_url() url = self.oper_excel.get_cell_value(row, col) return url #case body def get_request_data(self, row): col = get_data() data = self.oper_excel.get_cell_value(row, col) if data == '': return None return data #通过关键字获取body def get_data_for_json(self, row): opera_json = OperationJson() request_data = opera_json.get_data(self.get_request_data(row)) return request_data #获取预期结果 def get_expcet_data(self, row): col = get_expect() expect = self.oper_excel.get_cell_value(row, col) if expect == '': return None return expect def write_result(self, row, value): col = get_result() self.oper_excel.write_value(row, col, value) #获取依赖数据的key def get_depend_key(self, row): col = get_data_depend() depend_key = self.oper_excel.get_cell_value(row, col) if depend_key == '': return None else: return depend_key #判断是否有case依赖 def is_depend(self, row): col = get_case_depend() depend_case_id = self.oper_excel.get_cell_value(row, col) if depend_case_id == '': return None else: return depend_case_id #获取数据依赖字段 def get_depend_field(self, row): col = get_field_depend() data = self.oper_excel.get_cell_value(row, col) if data == '': return None else: return data
class GetData(object): def __init__(self): self.oper_excel = OperationExcel() self.opera_mysql = OperationMysql() # 去获取excel的行数,就是case(用例)的个数 def get_case_lines(self): return self.oper_excel.get_lines() # 获取是否执行 def get_is_run(self, row): flag = None col = int(data_config.get_run()) run_model = self.oper_excel.get_cell_value(row, col) if run_model == "yes": flag = True else: flag = False return flag # 获取请求方式 def get_request_method(self, row): col = int(data_config.get_request_way()) request_method = self.oper_excel.get_cell_value(row, col) return request_method # 获取url def get_request_url(self, row): col = int(data_config.get_url()) url = self.oper_excel.get_cell_value(row, col) return url # 获取请求头header关键字 def is_header(self, row): col = int(data_config.get_header()) header = self.oper_excel.get_cell_value(row, col) if header == "": return None else: return header # 通过请求头关键字拿到data数据 def get_header_value(self, row): opera_json = OperationJson( "D:\GZRJ\Python_XM\\api_automation_test\dataconfig\\request_header.json" ) request_header = opera_json.get_data(self.is_header(row)) return request_header # 获取请求数据 def get_request_data(self, row): col = int(data_config.get_data()) data = self.oper_excel.get_cell_value(row, col) if data == "": return None else: return data # 获取json数据,根据get_request_data的返回值获取 def get_data_for_json(self, row): opera_json = OperationJson() request_data = opera_json.get_data(self.get_request_data(row)) return request_data # 获取预期结果 def get_expcet_data(self, row): col = int(data_config.get_expect()) expect = self.oper_excel.get_cell_value(row, col) if expect == "": return None else: return expect # 通过sql获取预期结果 def get_expcet_data_for_mysql(self, row): sql = self.get_expcet_data(row) res = self.opera_mysql.search_one(sql) return res #return res.encode('unicode-escape') # 往excel中写入测试结果(直接调用operation_excel中的写入方法,把row, col, value传入就可以了) def write_result(self, row, value): col = int(data_config.get_result()) self.oper_excel.write_value(row, col, value) # 判断是否有case依赖 def is_depend(self, row): col = int(data_config.get_case_depend()) depend_case_id = self.oper_excel.get_cell_value(row, col) if depend_case_id == "": return None else: return depend_case_id # 获取依赖数据的key def get_depend_key(self, row): col = int(data_config.get_data_depend()) depend_key = self.oper_excel.get_cell_value(row, col) if depend_key == "": return None else: return depend_key # 获取依赖数据的所属字段 def get_depend_field(self, row): col = int(data_config.get_field_depend()) data = self.oper_excel.get_cell_value(row, col) if data == "": return None else: return data
class GetData: def __init__(self): self.opera_excel = OperationExcel() def get_case_lines(self): """获取excel行数,即case的个数""" return self.opera_excel.get_lines() def get_is_run(self, row): """获取是否执行""" flag = None col = int(data_config.get_run()) run_model = self.opera_excel.get_cell_value(row, col) if run_model == 'yes': flag = True else: flag = False return flag def is_header(self, row): """ 是否携带header :param row: 行号 :return: """ col = int(data_config.get_header()) header = self.opera_excel.get_cell_value(row, col) if header != '': return header else: return None def get_request_method(self, row): """ 获取请求方式 :param row: 行号 :return: """ # col 列 col = int(data_config.get_run_way()) request_method = self.opera_excel.get_cell_value(row, col) return request_method def get_request_url(self, row): """ 获取url :param row: 行号 :return: """ col = int(data_config.get_url()) url = self.opera_excel.get_cell_value(row, col) return url def get_request_data(self, row): """ 获取请求数据 :param row:行号 :return: """ col = int(data_config.get_data()) data = self.opera_excel.get_cell_value(row, col) if data == '': return None return data def get_data_for_json(self, row): """ 通过关键字拿到data数据 :param row: :return: """ opera_json = OperationJson() request_data = opera_json.get_data(self.get_request_data(row)) return request_data def get_expcet_data(self, row): """ 获取预期结果 :param row: :return: """ col = int(data_config.get_expect()) expect = self.opera_excel.get_cell_value(row, col) if expect == "": return None else: return expect def write_result(self, row, value): """ 写入结果数据 :param row: :param col: :return: """ col = int(data_config.get_result()) self.opera_excel.write_value(row, col, value) def get_depend_key(self, row): """ 获取依赖数据的key :param row:行号 :return: """ col = int(data_config.get_data_depend()) depend_key = self.opera_excel.get_cell_value(row, col) if depend_key == "": return None else: return depend_key def is_depend(self, row): """ 判断是否有case依赖 :param row:行号 :return: """ col = int(data_config.get_case_depend()) # 获取是否存在数据依赖列 depend_case_id = self.opera_excel.get_cell_value(row, col) if depend_case_id == "": return None else: return depend_case_id def get_depend_field(self, row): """ 获取依赖字段 :param row: :return: """ col = int(data_config.get_field_depend()) data = self.opera_excel.get_cell_value(row, col) if data == "": return None else: return data def get_sql_data(self, row): """获取更新SQL数据""" col = int(data_config.get_sql()) data = self.opera_excel.get_cell_value(row, col) if data == "": return None else: return data # 通过SQL修改数据 def update_sql(self, row): op_mysql = OperationMysql() sql = self.get_sql_data(row) res = op_mysql.update_one(sql)
class GetData: def __init__(self): self.oper_excel = OperationExcel() # 获取excel行数,即case个数 def get_case_line(self): return self.oper_excel.get_lines() # 获取url def get_request_url(self, row): col = int(data.data_config.get_url()) url = self.oper_excel.get_cell_value(row, col) return url # 获取是否执行 def get_is_run(self, row): col = int(data.data_config.get_run()) run = self.oper_excel.get_cell_value(row, col) if run == 'yes': flag = True else: flag = False return flag # 获取请求方式 def get_request_method(self, row): col = int(data.data_config.get_request_way()) url = self.oper_excel.get_cell_value(row, col) return url # 获取是否携带header def is_header(self, row): col = int(data.data_config.get_header()) header = self.oper_excel.get_cell_value(row, col) if header == 'yes': return data.data_config.get_header_value() else: return None # 获取请求数据 # def get_request_data(self,row): # oper_json = OperationJson() # col = int(data.data_config.get_data()) # request_data = self.oper_excel.get_cell_value(row, col) # if request_data == '': # return None # else: # return oper_json.get_data(request_data) # 这样写行不行?视频7-7 13分钟 def get_request_data(self, row): col = int(data.data_config.get_data()) request_data = self.oper_excel.get_cell_value(row, col) if request_data == '': return None else: return request_data # 通过获取关键字拿到json数据 def get_json_data(self, row): oper_json = OperationJson() data = oper_json.get_data(self.get_request_data(row)) return data # 获取预期结果 def get_expect_value(self, row): col = int(data.data_config.get_expect()) expect = self.oper_excel.get_cell_value(row, col) if expect == '': return None else: return expect
class GetData: def __init__(self, path, sheetNum): self.opera_excel = OperationExcel(path, sheetNum) # self.opera_excel = OperationExcel('../dataconfig/OA.xls', 0) #去获取excel行数,就是我们的case个数 def get_excel_name(self): return self.opera_excel.get_name() #去获取excel行数,就是我们的case个数 def get_case_lines(self): return self.opera_excel.get_lines() #获取是否执行 def get_is_run(self, row): flag = None col = int(data_config.get_run()) run_model = self.opera_excel.get_cell_value(row, col) if run_model == 'yes': flag = True else: flag = False return flag #是否携带header def is_header(self, row): col = int(data_config.get_header()) header = self.opera_excel.get_cell_value(row, col) if header != '': return header else: return None #获取请求方式 def get_request_method(self, row): col = int(data_config.get_run_way()) request_method = self.opera_excel.get_cell_value(row, col) return request_method #获取case id def get_case_id(self, row): col = int(data_config.get_id()) id = self.opera_excel.get_cell_value(row, col) return id #获取case名称 def get_case_name(self, row): col = int(data_config.get_name()) id = self.opera_excel.get_cell_value(row, col) return id #获取url def get_request_url(self, row): col = int(data_config.get_url()) url = self.opera_excel.get_cell_value(row, col) return url #获取请求数据 def get_request_data(self, row): col = int(data_config.get_data()) data = self.opera_excel.get_cell_value(row, col) if data == '': return None return data #通过获取关键字拿到data数据 def get_data_for_json(self, row): # 通过json_path单元格获取制定的json模块的data(excel的json路径列) json_path = self.get_path_json(row) opera_json = OperetionJson(json_path) request_data = opera_json.get_data(self.get_request_data(row)) return request_data #获取预期结果 def get_expcet_data(self, row): col = int(data_config.get_expect()) # print "预期结果" expect = self.opera_excel.get_cell_value(row, col) if expect == '': return None return expect #获取用来做结果比对的sql查询语句 def get_sql_result_data(self, row): col = int(data_config.get_sql_result()) # print "获取用来做结果比对的sql查询语句" sql_result = self.opera_excel.get_cell_value(row, col) if sql_result == '': return None return sql_result #获取sql依赖单元格的查询语句 def get_sql_rely_result_data(self, row): col = int(data_config.get_data_depend_sql()) # print "获取sql依赖单元格的查询语句" sql_result = self.opera_excel.get_cell_value(row, col) if sql_result == '': return None return sql_result #通过sql获取预期结果 def get_one_sql_data(self, row, get_data): sql = get_data(row) # print sql # 这里做判断,预期结果内有sql命令,才去运行sql if sql != None: op_mysql = OperationMysql() res = op_mysql.search_one(sql) # return res.decode('unicode-escape') # print(res.encode('utf-8').decode('gb18030')) # print(type((res.encode('utf-8').decode('gb18030')))) return res.encode('utf-8').decode('unicode_escape') else: return None def get_all_sql_data(self, row, get_data): sql = get_data(row) # print sql # 这里做判断,预期结果内有sql命令,才去运行sql if sql != None: op_mysql = OperationMysql() res = op_mysql.search_all(sql) # return res.decode('unicode-escape') # print(res.encode('utf-8').decode('gb18030')) # print(type((res.encode('utf-8').decode('gb18030')))) return res.encode('utf-8').decode('unicode_escape') else: return None #写响应结果到实际结果列 def write_result(self, row, value): col = int(data_config.get_responde_result()) self.opera_excel.write_value(row, col, value) #写测试结果到测试结果列 def write_result_status(self, row, value): col = int(data_config.get_result_status()) self.opera_excel.write_value(row, col, value) #写响应结果返回值到返回状态列 def write_code_responde_result(self, row, value): col = int(data_config.get_code_responde_result()) self.opera_excel.write_value(row, col, value) #写请求数据内容到请求数据内容列 def write_request_data_result(self, row, value): col = int(data_config.get_request_data_result()) self.opera_excel.write_value(row, col, value) #写数据库查询结果到sql查询结果 def write_sql_result(self, row, value): col = int(data_config.write_sql_result()) self.opera_excel.write_value(row, col, value) #将sql查询出、返回状态、实际结果、请求数据内容和测试结果列的结果置空 def write_void_to_output_cell(self, row, value): col = int(data_config.write_sql_result()) self.opera_excel.write_value(row, col, value) col = int(data_config.get_code_responde_result()) self.opera_excel.write_value(row, col, value) col = int(data_config.get_responde_result()) self.opera_excel.write_value(row, col, value) col = int(data_config.get_request_data_result()) self.opera_excel.write_value(row, col, value) col = int(data_config.get_result_status()) self.opera_excel.write_value(row, col, value) #获取依赖数据的key def get_depend_key(self, row): col = int(data_config.get_data_depend()) depent_key = self.opera_excel.get_cell_value(row, col) if depent_key == "": return None else: return depent_key #判断是否有case依赖 def is_depend(self, row): col = int(data_config.get_case_depend()) depend_case_id = self.opera_excel.get_cell_value(row, col) if depend_case_id == "": return None else: return depend_case_id #判断是否有sql查询case的依赖 def is_depend_sql(self, row): col = int(data_config.get_data_depend_sql()) depend_sql = self.opera_excel.get_cell_value(row, col) # print "depend_sql" # print depend_sql if depend_sql == "": return None else: return depend_sql #获取数据依赖字段 def get_depend_field(self, row): col = int(data_config.get_field_depend()) data = self.opera_excel.get_cell_value(row, col) if data == "": return None else: return data #获取对应测试模块josn文件的路径 def get_path_json(self, row): col = int(data_config.get_json_path()) json_path = self.opera_excel.get_cell_value(row, col) return json_path
class GetData: def __init__(self, file_name=None, sheet_id=None): self.file_name = file_name self.sheet_id = sheet_id self.opera_excel = OperationExcel(self.file_name, self.sheet_id) #实例化 self.global_var = GlobalVar() #实例化 #去获取excel行数,就是我们的case个数 def get_case_lines(self): return self.opera_excel.get_lines() # 获取id单元格内的内容 def get_id_content(self, row): col = int(self.global_var.id) #获取id所在的列数 id_content = self.opera_excel.get_cell_value(row, col) #获取指定单元格的内容 if id_content == '': return None else: return id_content #获取title单元格内的内容 def get_title_content(self, row): col = int(self.global_var.title) #获取title所在的列数 title_content = self.opera_excel.get_cell_value(row, col) #获取指定单元格的内容 if title_content == '': return None else: return title_content #获取out_json_file单元格内的内容 def get_out_json_file_content(self, row): col = int(self.global_var.out_json_file) #获取out_json_file所在的列数 out_json_file_content = self.opera_excel.get_cell_value( row, col) #获取指定单元格的内容 if out_json_file_content == '': return None else: return out_json_file_content #获取out_login_url单元格内的内容 def get_out_login_url_content(self, row): col = int(self.global_var.out_login_url) #获取out_login_url所在的列数 out_login_url_content = self.opera_excel.get_cell_value( row, col) #获取指定单元格的内容 if out_login_url_content == '': return None else: return out_login_url_content #获取out_login_account_xpath单元格内的内容 def get_out_login_account_xpath_content(self, row): col = int( self.global_var.out_login_account_xpath) #获取out_login_account所在的列数 out_login_account_xpath_content = self.opera_excel.get_cell_value( row, col) #获取指定单元格的内容 if out_login_account_xpath_content == '': return None else: return out_login_account_xpath_content #获取out_login_account_text单元格内的内容 def get_out_login_account_text_content(self, row): col = int(self.global_var.out_login_account_text ) #获取out_login_account_text所在的列数 out_login_account_text_content = self.opera_excel.get_cell_value( row, col) #获取指定单元格的内容 if out_login_account_text_content == '': return None else: return out_login_account_text_content #获取out_login_password_xpath单元格内的内容 def get_out_login_password_xpath_content(self, row): col = int(self.global_var.out_login_password_xpath ) #获取out_login_password_xpath所在的列数 out_login_password_xpath_content = self.opera_excel.get_cell_value( row, col) #获取指定单元格的内容 if out_login_password_xpath_content == '': return None else: return out_login_password_xpath_content #获取out_login_password_text单元格内的内容 def get_out_login_password_text_content(self, row): col = int(self.global_var.out_login_password_text ) #获取out_login_password_text所在的列数 out_login_password_text_content = self.opera_excel.get_cell_value( row, col) #获取指定单元格的内容 if out_login_password_text_content == '': return None else: return out_login_password_text_content #获取out_login_button_xpath单元格内的内容 def get_out_login_button_xpath_content(self, row): col = int(self.global_var.out_login_button_xpath ) #获取out_login_button_xpath所在的列数 out_login_button_xpath_content = self.opera_excel.get_cell_value( row, col) #获取指定单元格的内容 if out_login_button_xpath_content == '': return None else: return out_login_button_xpath_content #写入test_result def write_test_result(self, row, value): col = int(self.global_var.test_result) #获取test_result所在的列数 self.opera_excel.write_value(row, col, value) #向指定的单元格写入内容 #写入test_description def write_test_description(self, row, value): col = int(self.global_var.test_description) #获取test_description所在的列数 self.opera_excel.write_value(row, col, value) #向指定的单元格写入内容
class GetData: def __init__(self, fileName, sheetid): self.opera_excel = OperationExcel(file_name=fileName, sheet_id=sheetid) def throw_canNotBeNullException(self, row, cellValue, colName): if isinstance(cellValue, str) and cellValue.strip() == '' or cellValue == None: raise Exception("excel文件第{}行".format(row + 1), str(colName) + "值不能为空") pass #去获取excel行数,就是我们的case个数 def get_case_lines(self): return self.opera_excel.get_lines() #获取是否执行 def get_is_run(self, row): flag = None col = int(data_config.get_run()) run_model = self.opera_excel.get_cell_value(row, col) self.throw_canNotBeNullException(row=row, cellValue=run_model, colName="run_model") print('run_model==', run_model) if run_model == 'yes': flag = True else: flag = False return flag #是否携带header def is_header(self, row): col = int(data_config.get_header()) header = self.opera_excel.get_cell_value(row, col) if header != '': return header else: return None def get_request_header(self, row): col = int(data_config.get_header()) header = self.opera_excel.get_cell_value(row, col) if header.strip() == '': return None else: return json.loads(header) #获取请求方式 def get_request_method(self, row): col = int(data_config.get_run_way()) request_method = self.opera_excel.get_cell_value(row, col) self.throw_canNotBeNullException(row=row, cellValue=request_method, colName="request_method") return request_method #获取域名 def get_request_domain(self, row): col = int(data_config.get_domain()) domain = self.opera_excel.get_cell_value(row, col) self.throw_canNotBeNullException(row=row, cellValue=domain, colName="domain") return domain # 获取域名后面的虚拟目录path def get_request_path(self, row): col = int(data_config.get_path()) path = self.opera_excel.get_cell_value(row, col) self.throw_canNotBeNullException(row=row, cellValue=path, colName="path") return path #获取请求数据 def get_request_data(self, row): col = int(data_config.get_data()) data = self.opera_excel.get_cell_value(row, col) if data == '': return None return data #通过获取关键字拿到data数据 def get_data_for_json(self, row): opera_json = OperetionJson() id = self.get_request_data(row) request_data = opera_json.get_data(id=id) return request_data #获取预期结果 def get_expcet_response(self, row): col = int(data_config.get_expectResponse()) expectResponse = self.opera_excel.get_cell_value(row, col) self.throw_canNotBeNullException(row=row, cellValue=expectResponse, colName="expectResponse") return json.loads(expectResponse) #通过sql获取预期结果 def get_expcet_data_for_mysql(self, row): op_mysql = OperationMysql() sql = self.get_expcet_data(row) res = op_mysql.search_one(sql) return res.decode('unicode-escape') def write_result(self, row, value): col = int(data_config.get_result()) self.opera_excel.write_value(row, col, value) def write_actualResponse(self, row, value): col = int(data_config.get_ActualResponse()) self.opera_excel.write_value(row, col, value) def write_actualStatusCode(self, row, value): col = int(data_config.get_ActualHTTPStatus()) self.opera_excel.write_value(row, col, value) #获取依赖数据的key def get_depend_key(self, row): col = int(data_config.get_data_depend()) depent_key = self.opera_excel.get_cell_value(row, col) if depent_key == "": return None else: return depent_key #判断是否有case依赖 def is_depend(self, row): col = int(data_config.get_case_depend()) depend_case_id = self.opera_excel.get_cell_value(row, col) if depend_case_id == "": return None else: return depend_case_id #获取数据依赖字段 def get_depend_field(self, row): col = int(data_config.get_field_depend()) data = self.opera_excel.get_cell_value(row, col) if data == "": return None else: return data def get_body(self, row): col = int(data_config.get_body()) body = self.opera_excel.get_cell_value(row, col) if body == "": return None else: return json.loads(body) def get_cookies(self, row): col = int(data_config.get_cookie()) cookies = self.opera_excel.get_cell_value(row, col) if cookies == "": return None else: return json.loads(cookies) def get_expectHttpStatus(self, row): col = int(data_config.get_ExpectHTTPStatus()) expectHttpStatus = self.opera_excel.get_cell_value(row, col) self.throw_canNotBeNullException(row=row, cellValue=expectHttpStatus, colName="expectHttpStatus") if expectHttpStatus == "": return None else: return expectHttpStatus def get_requestParams(self, row): col = int(data_config.get_params()) params = self.opera_excel.get_cell_value(row, col) if params == "": return None else: return json.loads(params)
class GetData: """获取excel数据""" def __init__(self): self.opera_excel = OperationExcel() self.global_val = Global_Val() def get_case_lines(self): """获取excel行数,即case的个数""" return self.opera_excel.get_lines() def get_is_run(self, row): """获取是否执行""" flag = None col = int(self.global_val.get_run()) run_model = self.opera_excel.get_cell_value(row, col) if run_model == 'yes': flag = True else: flag = False return flag def is_header(self, row): """ 是否携带header :param row: 行号 :return: """ col = int(self.global_val.get_headers()) header = self.opera_excel.get_cell_value(row, col) if header != '': return header else: return None def get_request_case(self, row): col = self.global_val.get_id() request_case = self.opera_excel.get_cell_value(row, col) return request_case def get_request_name(self, row): ''' 获取请求模块标题 :param row: 行号 :return: ''' col = int(self.global_val.get_request_name()) request_name = self.opera_excel.get_cell_value(row, col) return request_name def get_request_method(self, row): """ 获取请求方式 :param row: 行号 :return: """ # col 列 col = int(self.global_val.get_run_way()) request_method = self.opera_excel.get_cell_value(row, col) return request_method def get_request_url(self, row): """ 获取url :param row: 行号 :return: """ col = int(self.global_val.get_url()) url = self.opera_excel.get_cell_value(row, col) return url def get_request_data(self, row): """ 获取请求数据 :param row:行号 :return: """ col = int(self.global_val.get_data()) data = self.opera_excel.get_cell_value(row, col) if type(data) == dict: data = json.loads(data) if data == '': return None return data def get_data_for_json(self, row): """ 通过关键字拿到data数据 :param row: :return: """ opera_json = OperationJson() request_data = opera_json.get_data(self.get_request_data(row)) return request_data def get_expcet_data(self, row): """ 获取预期结果 :param row: :return: """ col = int(self.global_val.get_expect()) expect = self.opera_excel.get_cell_value(row, col) if expect == "": return None else: return expect def write_result(self, row, value): """ 写入结果数据 :param row: :param col: :return: """ col = int(self.global_val.get_result()) self.opera_excel.write_value(row, col, value) def write_result_error(self, row, value): """ 写入结果数据 :param row: :param col: :return: """ col = int(self.global_val.get_result_error()) self.opera_excel.write_value(row, col, value) def get_depend_key(self, row): """ 获取依赖数据的key :param row:行号 :return: """ col = int(self.global_val.get_data_depend()) depend_key = self.opera_excel.get_cell_value(row, col) if depend_key == "": return None else: return depend_key def is_depend(self, row): """ 判断是否有case依赖 :param row:行号 :return: """ col = int(self.global_val.get_case_depend()) # 获取是否存在数据依赖列 depend_case_id = self.opera_excel.get_cell_value(row, col) if depend_case_id == "": return None else: return depend_case_id def get_depend_field(self, row): """ 获取依赖字段 :param row: :return: """ col = int(self.global_val.get_field_depend()) data = self.opera_excel.get_cell_value(row, col) if data == "": return None else: return data
class GetData: def __init__(self, file_name=None, sheet_id=None): self.operation_excel = OperationExcel(file_name, sheet_id) # 获取Excel行数,即case个数 def get_case_lines(self): return self.operation_excel.get_lines() # 获取是否执行 def get_is_run(self, row): col = int(data_config.get_run()) run_model = self.operation_excel.get_cell_value(row, col) if run_model == 'yes': flag = True else: flag = False return flag # 如果excel里是 yes or no 来判断是否携带header def is_header(self, row): col = int(data_config.get_header()) header = self.operation_excel.get_cell_value(row, col) if header == 'yes': return data_config.get_login_header_value() else: return None # 如果excel表里header是用户名 def get_header(self, row): col = int(data_config.get_header()) header = self.operation_excel.get_cell_value(row, col) pc_headers = data_config.pc_headers(header) return pc_headers # 获取请求方式 def get_request_method(self, row): col = int(data_config.get_request_method()) request_method = self.operation_excel.get_cell_value(row, col) return request_method # 获取url def get_url(self, row): col = int(data_config.get_url()) url = self.operation_excel.get_cell_value(row, col) return url # 获取前提条件--返回结果数据 def get_pre_data(self, row): col = int(data_config.get_pre()) data = self.operation_excel.get_cell_value(row, col) return data # 获取请求数据 def get_request_data(self, row): col = int(data_config.get_data()) data = self.operation_excel.get_cell_value(row, col) if data == '': return None return data # 通过获取关键字拿到data数据 def get_data_for_json(self, row): opera_json = OperationJson() request_data = opera_json.get_data(self.get_request_data(row)) return request_data # 获取预期结果 def get_expect_data(self, row): col = int(data_config.get_expect()) expect = self.operation_excel.get_cell_value(row, col) if expect == '': return None return expect def get_case_id(self, row): col = int(data_config.get_id()) case_id = self.operation_excel.get_cell_value(row, col) if case_id == '': return None return case_id def write_result(self, row, value): col = int(data_config.get_result()) self.operation_excel.write_value(row, col, value) def write_res_to_pre(self, row, value): col = int(data_config.get_pre()) # 请求 res.json()方法会把 null 转换成 None 破坏 json格式,这里回写 excel时将 None用引号包裹 self.operation_excel.write_value(row, col, value.replace("None", "null")) # 判断是否有case依赖 def get_case_depend(self, row): col = int(data_config.get_case_depend()) case_depend = self.operation_excel.get_cell_value(row, col) if case_depend == "": return None else: return case_depend
class GetData: def __init__(self, file_name=None, sheet_id=None): self.file_name = file_name self.sheet_id = sheet_id self.opera_excel = OperationExcel(self.file_name, self.sheet_id) #实例化 #去获取excel行数,就是我们的case个数 def get_case_lines(self): return self.opera_excel.get_lines() # 获取id def get_id(self, row): col = int(get_id()) #获取id所在的列数 id = self.opera_excel.get_cell_value(row, col) #获取指定单元格的内容 return id # 获取title def get_title(self, row): col = int(get_title()) #获取id所在的列数 title = self.opera_excel.get_cell_value(row, col) #获取指定单元格的内容 return title #获取是否加入cookie def get_cookie(self, row): col = int(get_cookie()) #获取cookie所在的列数 url = self.opera_excel.get_cell_value(row, col) #获取指定单元格的内容 return url # 获取url def get_url(self, row): col = int(get_url()) #获取url所在的列数 url = self.opera_excel.get_cell_value(row, col) #获取指定单元格的内容 print("获取到的url:%s" % url) return url #获取selectxpath def get_selectxpath(self, row): col = int(get_selectxpath()) #获取testxpath所在的列数 selectxpath = self.opera_excel.get_cell_value(row, col) #获取指定单元格的内容 if selectxpath == '': return None else: return selectxpath #获取selectoptiontext def get_selectoptiontext(self, row): col = int(get_selectoptiontext()) #获取testxpath所在的列数 selectoptiontext = self.opera_excel.get_cell_value(row, col) #获取指定单元格的内容 if selectoptiontext == '': return None else: return selectoptiontext #获取selectinputxpath def get_selectinputxpath(self, row): col = int(get_selectinputxpath()) #获取testxpath所在的列数 selectinputxpath = self.opera_excel.get_cell_value(row, col) #获取指定单元格的内容 if selectinputxpath == ' ': return None else: return selectinputxpath #获取selectinputtext def get_selectinputtext(self, row): col = int(get_selectinputtext()) #获取testxpath所在的列数 selectinputtext = self.opera_excel.get_cell_value(row, col) #获取指定单元格的内容 if selectinputtext == '': return None else: return selectinputtext #获取searchbuttonxpath def get_searchbuttonxpath(self, row): col = int(get_searchbuttonxpath()) #获取testxpath所在的列数 searchbuttonxpath = self.opera_excel.get_cell_value(row, col) #获取指定单元格的内容 return searchbuttonxpath #获取searchtableresultxpath def get_searchtableresultxpath(self, row): col = int(get_searchtableresultxpath()) #获取testxpath所在的列数 searchtableresultxpath = self.opera_excel.get_cell_value( row, col) #获取指定单元格的内容 return searchtableresultxpath #获取colnum def get_colnum(self, row): col = int(get_colnum()) #获取testxpath所在的列数 colnum = self.opera_excel.get_cell_value(row, col) #获取指定单元格的内容 return colnum #获取checktext def get_checktext(self, row): col = int(get_checktext()) #获取testxpath所在的列数 checktext = self.opera_excel.get_cell_value(row, col) #获取指定单元格的内容 return checktext #写入testresult def write_testresult(self, row, value): col = int(get_testresult()) #获取testresult所在的列数 self.opera_excel.write_value(row, col, value) #向指定的单元格写入内容 #写入testdescription def write_testdescription(self, row, value): col = int(get_testdescription()) #获取testdescription所在的列数 self.opera_excel.write_value(row, col, value) #向指定的单元格写入内容 #判断是否加入cookie def is_cookie(self, row): cookie = self.get_cookie(row) if cookie == 'yes': return True else: return False
class GetData: def __init__(self): self.opera_excel = OperationExcel() #去获取excel行数,就是我们的case个数 def get_case_lines(self): return self.opera_excel.get_lines() #获取是否执行 def get_is_run(self, row): flag = None col = int(data_config.get_run()) run_model = self.opera_excel.get_cell_value(row, col) if run_model == 'yes': flag = True else: flag = False return flag #是否携带header def is_header(self, row): col = int(data_config.get_header()) header = self.opera_excel.get_cell_value(row, col) if header == 'yes': return data_config.get_header_value() else: return None #获取请求方式 def get_request_method(self, row): col = int(data_config.get_request_way()) request_method = self.opera_excel.get_cell_value(row, col) return request_method #获取url def get_url(self, row): col = int(data_config.get_url()) url = self.opera_excel.get_cell_value(row, col) return url #获取请求数据 def get_data(self, row): col = int(data_config.get_data()) data = self.opera_excel.get_cell_value(row, col) if data == '': return None return data #通过获取关键字拿到data数据 def get_data_for_json(self, row): opera_json = OperationJson() data = opera_json.get_data_by_key(self.get_data(row)) return data #获取预期数据 def get_expect(self, row): col = int(data_config.get_expect()) expect = self.opera_excel.get_cell_value(row, col) if expect == '': return None return expect #写入数据 def write_result(self, row, value): col = int(data_config.get_result()) self.opera_excel.write_value(row, col, value) #获取依赖数据的key def get_depend_key(self, row): col = int(data_config.get_data_depend()) depend_key = self.opera_excel.get_cell_value(row, col) if depend_key == '': return None else: return depend_key
class GetData: def __init__(self): self.opera_excel = OperationExcel() #实例化 #去获取excel行数,就是我们的case个数 def get_case_lines(self): return self.opera_excel.get_lines() # 获取brandname def get_brandname(self,row): col = int(get_brandname()) #获取brandname所在的列数 brandname = self.opera_excel.get_cell_value(row, col) #获取指定单元格的内容 return brandname #获取email def get_email(self,row): col = int(get_email()) #获取email所在的列数 email = self.opera_excel.get_cell_value(row, col) #获取指定单元格的内容 return email #获取contactnumber def get_contactnumber(self,row): col = int(get_contactnumber()) #获取contactnumber所在的列数 contactnumber = self.opera_excel.get_cell_value(row, col) #获取指定单元格的内容 return contactnumber #获取merchanttype def get_merchanttype(self,row): col = int(get_merchanttype()) #获取merchanttype所在的列数 merchanttype = self.opera_excel.get_cell_value(row, col) #获取指定单元格的内容 return merchanttype #获取category def get_category(self,row): col = int(get_category()) #获取category所在的列数 category = self.opera_excel.get_cell_value(row, col) #获取指定单元格的内容 return category #获取criteria def get_criteria(self,row): col = int(get_criteria()) #获取criteria所在的列数 criteria = self.opera_excel.get_cell_value(row, col) #获取指定单元格的内容 return criteria #获取siup def get_siup(self,row): col = int(get_siup()) #获取siup所在的列数 siup = self.opera_excel.get_cell_value(row, col) #获取指定单元格的内容 return siup #获取province def get_province(self,row): col = int(get_province()) #获取province所在的列数 province = self.opera_excel.get_cell_value(row, col) #获取指定单元格的内容 return province #获取city def get_city(self,row): col = int(get_city()) #获取city所在的列数 city = self.opera_excel.get_cell_value(row, col) #获取指定单元格的内容 return city #获取district def get_district(self,row): col = int(get_district()) #获取district所在的列数 district = self.opera_excel.get_cell_value(row, col) #获取指定单元格的内容 return district #获取village def get_village(self,row): col = int(get_village()) #获取village所在的列数 village = self.opera_excel.get_cell_value(row, col) #获取指定单元格的内容 return village #获取postcode def get_postcode(self,row): col = int(get_postcode()) #获取postcode所在的列数 postcode = self.opera_excel.get_cell_value(row, col) #获取指定单元格的内容 return postcode #获取address def get_address(self,row): col = int(get_address()) #获取address所在的列数 address = self.opera_excel.get_cell_value(row, col) #获取指定单元格的内容 return address #获取company def get_company(self,row): col = int(get_company()) #获取company所在的列数 company = self.opera_excel.get_cell_value(row, col) #获取指定单元格的内容 return company #获取npwptaxid def get_npwptaxid(self,row): col = int(get_npwptaxid()) #获取npwptaxid所在的列数 npwptaxid = self.opera_excel.get_cell_value(row, col) #获取指定单元格的内容 return npwptaxid #获取officialwebsite def get_officialwebsite(self,row): col = int(get_officialwebsite()) #获取officialwebsite所在的列数 officialwebsite = self.opera_excel.get_cell_value(row, col) #获取指定单元格的内容 return officialwebsite #获取photosiup def get_photosiup(self,row): col = int(get_photosiup()) #获取photosiup所在的列数 photosiup = self.opera_excel.get_cell_value(row, col) #获取指定单元格的内容 return photosiup #获取photonpwpcompany def get_photonpwpcompany(self,row): col = int(get_photonpwpcompany()) #获取photonpwpcompany所在的列数 photonpwpcompany = self.opera_excel.get_cell_value(row, col) #获取指定单元格的内容 return photonpwpcompany #获取phototdp def get_phototdp(self,row): col = int(get_phototdp()) #获取phototdp所在的列数 phototdp = self.opera_excel.get_cell_value(row, col) #获取指定单元格的内容 return phototdp #获取name def get_name(self,row): col = int(get_name()) #获取name所在的列数 name = self.opera_excel.get_cell_value(row, col) #获取指定单元格的内容 return name #获取typeid def get_typeid(self,row): col = int(get_typeid()) #获取typeid所在的列数 typeid = self.opera_excel.get_cell_value(row, col) #获取指定单元格的内容 return typeid #获取identitynumber def get_identitynumber(self,row): col = int(get_identitynumber()) #获取identitynumber所在的列数 identitynumber = self.opera_excel.get_cell_value(row, col) #获取指定单元格的内容 return identitynumber #获取npwp def get_npwp(self,row): col = int(get_npwp()) #获取npwp所在的列数 npwp = self.opera_excel.get_cell_value(row, col) #获取指定单元格的内容 return npwp #获取addresstwo def get_addresstwo(self,row): col = int(get_addresstwo()) #获取addresstwo所在的列数 addresstwo = self.opera_excel.get_cell_value(row, col) #获取指定单元格的内容 return addresstwo #获取nationality def get_nationality(self,row): col = int(get_nationality()) #获取nationality所在的列数 nationality = self.opera_excel.get_cell_value(row, col) #获取指定单元格的内容 return nationality #获取position def get_position(self,row): col = int(get_position()) #获取position所在的列数 position = self.opera_excel.get_cell_value(row, col) #获取指定单元格的内容 return position #获取phone def get_phone(self,row): col = int(get_phone()) #获取phone所在的列数 phone = self.opera_excel.get_cell_value(row, col) #获取指定单元格的内容 return phone #获取emailtwo def get_emailtwo(self,row): col = int(get_emailtwo()) #获取emailtwo所在的列数 emailtwo = self.opera_excel.get_cell_value(row, col) #获取指定单元格的内容 return emailtwo #获取photofullfacebust def get_photofullfacebust(self,row): col = int(get_photofullfacebust()) #获取photofullfacebust所在的列数 photofullfacebust = self.opera_excel.get_cell_value(row, col) #获取指定单元格的内容 return photofullfacebust #获取locationphoto def get_locationphoto(self,row): col = int(get_locationphoto()) #获取locationphoto所在的列数 locationphoto = self.opera_excel.get_cell_value(row, col) #获取指定单元格的内容 return locationphoto #获取photoofthecashiersdesk def get_photoofthecashiersdesk(self,row): col = int(get_photoofthecashiersdesk()) #获取photoofthecashiersdesk所在的列数 photoofthecashiersdesk = self.opera_excel.get_cell_value(row, col) #获取指定单元格的内容 return photoofthecashiersdesk #获取otherphoto def get_otherphoto(self,row): col = int(get_otherphoto()) #获取otherphoto所在的列数 otherphoto = self.opera_excel.get_cell_value(row, col) #获取指定单元格的内容 return otherphoto #获取bank def get_bank(self,row): col = int(get_bank()) #获取bank所在的列数 bank = self.opera_excel.get_cell_value(row, col) #获取指定单元格的内容 return bank #获取accountname def get_accountname(self,row): col = int(get_accountname()) #获取accountname所在的列数 accountname = self.opera_excel.get_cell_value(row, col) #获取指定单元格的内容 return accountname #获取accountnumber def get_accountnumber(self,row): col = int(get_accountnumber()) #获取accountnumber所在的列数 accountnumber = self.opera_excel.get_cell_value(row, col) #获取指定单元格的内容 return accountnumber #获取qrindoamount def get_qrindoamount(self,row): col = int(get_qrindoamount()) #获取accountnumber所在的列数 qrindoamount = self.opera_excel.get_cell_value(row, col) #获取指定单元格的内容 return qrindoamount
class GetData: def __init__(self, file_name=None, sheet_id=None): self.file_name = file_name self.sheet_id = sheet_id self.opera_excel = OperationExcel(self.file_name, self.sheet_id) #实例化 self.global_var = GlobalVar() #实例化 #去获取excel行数,就是我们的case个数 def get_case_lines(self): return self.opera_excel.get_lines() # 获取case_id单元格内的内容 def get_case_id_content(self, row): col = int(self.global_var.case_id) #获取case_id所在的列数 case_id_content = self.opera_excel.get_cell_value(row, col) #获取指定单元格的内容 if case_id_content == '': return None else: return case_id_content #获取case_title单元格内的内容 def get_case_title_content(self, row): col = int(self.global_var.case_title) #获取case_title所在的列数 case_title_content = self.opera_excel.get_cell_value(row, col) #获取指定单元格的内容 if case_title_content == '': return None else: return case_title_content #获取account_input单元格内的内容 def get_account_input_content(self, row): col = int(self.global_var.account_input) #获取account_input所在的列数 account_input_content = self.opera_excel.get_cell_value( row, col) #获取指定单元格的内容 if account_input_content == '': return None else: return account_input_content #获取password_input单元格内的内容 def get_password_input_content(self, row): col = int(self.global_var.password_input) #获取password_input所在的列数 password_input_content = self.opera_excel.get_cell_value( row, col) #获取指定单元格的内容 if password_input_content == '': return None else: return password_input_content #获取pre_text单元格内的内容 def get_pre_text_content(self, row): col = int(self.global_var.pre_text) #获取pre_text所在的列数 pre_text_content = self.opera_excel.get_cell_value(row, col) #获取指定单元格的内容 if pre_text_content == '': return None else: return pre_text_content #获取pre_toast单元格内的内容 def get_pre_toast_content(self, row): col = int(self.global_var.pre_toast) #获取pre_toast所在的列数 pre_toast_content = self.opera_excel.get_cell_value(row, col) #获取指定单元格的内容 if pre_toast_content == '': return None else: return pre_toast_content #获取pre_back_text单元格内的内容 def get_pre_back_text_content(self, row): col = int(self.global_var.pre_back_text) #获取pre_back_text所在的列数 pre_back_text_content = self.opera_excel.get_cell_value( row, col) #获取指定单元格的内容 if pre_back_text_content == '': return None else: return pre_back_text_content #写入test_result def write_test_result(self, row, value): col = int(self.global_var.test_result) #获取test_result所在的列数 self.opera_excel.write_value(row, col, value) #向指定的单元格写入内容 #写入test_description def write_test_description(self, row, value): col = int(self.global_var.test_description) #获取test_description所在的列数 self.opera_excel.write_value(row, col, value) #向指定的单元格写入内容
class GetData(): def __init__(self): self.open_execl = OperationExcel() #获取case的行数 def get_case_lines(self): return self.open_execl.get_lines() #获取是否执行 def get_is_run(self, row): col = data_config.get_run() run_model = self.open_execl.get_cell_value(row, col) if run_model == 'yes': flag = True else: flag = False return flag #是否携带header def is_header(self, row): col = data_config.get_header() header = self.open_execl.get_cell_value(row, col) if header == 'yes': return data_config.get_header_value() else: return None #获取请求方式 def get_request_method(self, row): col = data_config.get_run_way() request_method = self.open_execl.get_cell_value(row, col) return request_method #获取url def get_request_url(self, row): col = data_config.get_url() url = self.open_execl.get_cell_value(row, col) return url #获取请求数据 def get_request_data(self, row): col = data_config.get_data() data = self.open_execl.get_cell_value(row, col) if data == '': return None return data #通过获取关键字拿到json数据 def get_data_for_json(self, row): opera_json = OperationJson() request_data = opera_json.get_data(self.get_request_data(row)) return request_data #获取预期结果 def get_expect_data(self, row): col = data_config.get_expect() expect = self.open_execl.get_cell_value(row, col) if expect == '': return None return expect def write_result(self, row, value): col = data_config.get_result() self.open_execl.write_value(row, col, value)
class GetData: def __init__(self, json_file, sheet_name): self.operation_excel = OperationExcel(sheet_name) self.json_file = json_file #获取excel行数 def get_case_line(self): return self.operation_excel.get_lines() #获取模块 def get_model(self, row): col = int(data_config.get_module()) return self.operation_excel.get_cell_value(row, col) #获取是否执行 def get_is_run(self, row): flag = None col = int(data_config.get_run()) run_model = self.operation_excel.get_cell_value(row, col) if run_model == 'yes': flag = True else: flag = False return flag #获取是否携带header def get_header(self, row): col = int(data_config.get_header()) header = self.operation_excel.get_cell_value(row, col) if header == 'yes': return data_config.get_header_value() else: return None #获取携带token的header def get_token_header(self, row, token_value): col = int(data_config.get_header()) header = self.operation_excel.get_cell_value(row, col) if header == 'yes': return data_config.get_token_header_value(token_value) else: return None #获取请求类型 def get_request_type(self, row): col = int(data_config.get_request_type()) return self.operation_excel.get_cell_value(row, col) #获取url def get_url(self, row): col = int(data_config.get_url()) return self.operation_excel.get_cell_value(row, col) #获取请求参数 def get_parameter(self, row): col = int(data_config.get_parameter()) data = self.operation_excel.get_cell_value(row, col) if data == '': return None return data # 获取是否连接数据库 def get_is_conn_db(self, row): flag = None col = int(data_config.get_conn_db()) conn_data_value = self.operation_excel.get_cell_value(row, col) if conn_data_value == 'yes': flag = True # self.get_data_for_json() else: flag = False # self.get_data_for_newjson() return flag #通过关键字拿到data数据 def get_data_for_json(self, row): oper_json = OperationJson(self.json_file) data_json = oper_json.get_data(self.get_parameter(row)) return data_json #通过关键字和修改请求参数值重新获取json中的请求数据 def get_data_for_newjson(self, row, value): oper_json = OperationJson(self.json_file) data_json = oper_json.get_new_json(self.get_parameter(row), value) return data_json #获取预期结果 def get_except(self, row): col = int(data_config.get_except()) except_data = self.operation_excel.get_cell_value(row, col) # sql_value = "%万科%" # except_data = "select * from ymm_borough where city_id='62' AND is_checked = '1' AND borough_name LIKE '%s'" % sql_value if except_data == '': return None return except_data #通过sql获取预期结果 def get_except_data_for_sql(self, row, sql_base): oper_mysql = OperationMysql(sql_base) except_data = self.get_except(row) result = oper_mysql.search_all(except_data) # if sql_value == '': # result = oper_mysql.search_all(except_data) # else: # result = oper_mysql.search_all(except_data % sql_value) return result # 写入实际结果 def write_result(self, row, value, sheet_id): col = int(data_config.get_result()) self.operation_excel.write_value(row, col, value, sheet_id) # 写入实际返回结果 def write_response(self, row, value, sheet_id): col = int(data_config.get_response()) self.operation_excel.write_value(row, col, value, sheet_id) # 获取依赖的返回数据 def get_dependent_data(self, row, index): col = int(data_config.get_data_dependent()) #dependent_data = self.operation_excel.get_cell_value(row, col) dependent_data = self.operation_excel.get_cell_value_more( row, col, index) if dependent_data == '': return None return dependent_data # 判断是否存在依赖case def is_depend(self, row): col = int(data_config.get_case_dependent()) dependent_case_id = self.operation_excel.get_cell_value(row, col) if dependent_case_id == '': return None return dependent_case_id # 判断是否存在2个依赖case def is_more_depend(self, row, index=None): col = int(data_config.get_case_dependent()) dependent_case_value = self.operation_excel.get_cell_value_more( row, col, index) if dependent_case_value == '': return None if ',' in dependent_case_value: dependent_case_id = dependent_case_value.split(',', 1)[index] return dependent_case_id else: return dependent_case_value # 获取依赖的字段 def get_dependent_key(self, row, index=None): col = int(data_config.get_key_dependent()) dependent_key = self.operation_excel.get_cell_value(row, col) if dependent_key == '': return None if ',' in dependent_key: dependent_key_id = dependent_key.split(',')[index] return dependent_key_id else: return dependent_key # 获取接口返回的字段 def get_response_key(self, row, index=None): col = int(data_config.get_response_key()) response_key = self.operation_excel.get_cell_value(row, col) if response_key == '': return None else: return response_key # 获取数据库中查询出的字段 def get_sql_key(self, row, index=None): col = int(data_config.get_sql_key()) sql_key = self.operation_excel.get_cell_value(row, col) if sql_key == '': return None # if ',' in sql_key: # sql_key_id = sql_key.split(',')[index] # return sql_key_id else: return sql_key # 获取对比类型 def get_sql_type(self, row): col = int(data_config.get_sql_type()) sql_type = self.operation_excel.get_cell_value(row, col) if sql_type == '': return None else: return sql_type
class GetData: def __init__(self): self.opera_excel = OperationExcel() # 去获取excel行数,就是我们的case个数 def get_case_lines(self): return self.opera_excel.get_lines() # 获取是否执行 def get_is_run(self, row): flag = None col = int(data_config.get_run()) run_model = self.opera_excel.get_cell_value(row, col) if run_model == 'yes': flag = True else: flag = False return flag # 是否携带header def is_header(self, row): col = int(data_config.get_header()) header = self.opera_excel.get_cell_value(row, col) if header == 'yes': # return 'header' return data_config.get_header_value() else: return None # 获取请求方式 def get_request_method(self, row): col = int(data_config.get_run_way()) request_method = self.opera_excel.get_cell_value(row, col) return request_method # 获取url def get_request_url(self, row): col = int(data_config.get_url()) url = self.opera_excel.get_cell_value(row, col) return url # 获取请求数据 def get_request_data(self, row): col = int(data_config.get_data()) data = self.opera_excel.get_cell_value(row, col) if data == '': return None return data # 通过获取关键字 拿到data数据 def get_data_for_json(self, row): # 不在构造函数,而在这里实例化,因为有的data不需要json opera_json = OperationJson() # 数据来源-excel,可直接调用 # request_data = opera_json.get_data(self.get_request_data()) request_data = opera_json.get_data(self.get_request_data(row)) return request_data # 获取预期结果 def get_expect_data(self, row): col = int(data_config.get_expect()) expect = self.opera_excel.get_cell_value(row, col) if expect == '': return None return expect # 写入结果 def write_result(self, row, value): col = int(data_config.get_result()) self.opera_excel.write_value(row, col, value) # 获取依赖数据的key def get_depend_key(self, row): col = int(data_config.get_data_depend()) depend_key = self.opera_excel.get_cell_value(row, col) if depend_key == "": return None else: return depend_key # 判断是否有case依赖 def is_depend(self, row): col = int(data_config.get_case_depend()) depend_case_id = self.opera_excel.get_cell_value(row, col) if depend_case_id == "": return None else: return depend_case_id # 获取数据依赖字段 def get_depend_field(self, row): col = int(data_config.get_field_depend()) data = self.opera_excel.get_cell_value(row, col) if data == "": return None else: return data
class GetData: # 构造函数,类初始化 def __init__(self, file_name=None, sheet_id=None): self.opera_excel = OperationExcel(file_name, sheet_id) # 获取excel行数,即用例个数 def get_case_lines(self): return self.opera_excel.get_lines() # 获取是否执行 def get_is_run(self, row): flag = None col = int(data_config.GLOBAL_VAR.RUN.value) run_model = self.opera_excel.get_cell_value(row, col) if run_model == 'yes': flag = True else: flag = False return flag # 是否携带header def is_header(self, row): col = int(data_config.GLOBAL_VAR.HEADER.value) header = self.opera_excel.get_cell_value(row, col) if header == 'yes': return data_config.get_header_value() else: return None # 获取请求方式 def get_request_method(self, row): col = int(data_config.GLOBAL_VAR.REQUEST_WAY.value) request_method = self.opera_excel.get_cell_value(row, col) return request_method # 获取url def get_request_url(self, row): col = int(data_config.GLOBAL_VAR.URL.value) url = self.opera_excel.get_cell_value(row, col) # print("Running URL=",url) return url # 获取请求数据 def get_request_data(self, row): col = int(data_config.GLOBAL_VAR.DATA.value) data = self.opera_excel.get_cell_value(row, col) if data == '': return None return data # 通过获取关键字请求数据 def get_data_for_json(self, row): opera_json = OperationJson() res = self.get_request_data(row) request_data = opera_json.get_data(self.get_request_data(row)) return request_data # 获取预期结果 def get_expcet_data(self, row): col = int(data_config.GLOBAL_VAR.ECPECT.value) expect = self.opera_excel.get_cell_value(row, col) if expect == '': return None return expect # 通过SQL获取预期结果 def get_expcet_data_for_mysql(self, row): op_mysql = OperationMysql() sql = self.get_expcet_data(row) res = op_mysql.search_one(sql) return res # 写入实际结果 def write_result(self, row, value): col = int(data_config.GLOBAL_VAR.RESULT.value) self.opera_excel.write_value(row, col, value) # 获取依赖数据的key def get_depend_key(self, row): col = int(data_config.GLOBAL_VAR.DATA_DEPEND.value) depend_key = self.opera_excel.get_cell_value(row, col) if depend_key == "": return None else: return depend_key # 判断是否有case依赖 def is_depend(self, row): col = int(data_config.GLOBAL_VAR.CASE_DEPEND.value) depend_case_id = self.opera_excel.get_cell_value(row, col) if depend_case_id == "": return None else: return depend_case_id # 获取数据依赖字段 def get_depend_fileld(self, row): col = int(data_config.GLOBAL_VAR.FIELD_DEPEND.value) data = self.opera_excel.get_cell_value(row, col) if data == "": return None else: return data
class GetData: def __init__(self): self.opera_excel = OperationExcel() self.opera_json = OperationJson() self.opera_header = op_header_json() self.data_config = data.data_config #self.data_config = self.data.data_config def get_case_lines(self): return self.opera_excel.get_lines() #获取是否执行 def get_is_run(self,row): flag = None col = int(self.data_config.get_run()) run_model = self.opera_excel.get_cell_value(row,col) if run_model == 'yes': flag = True else: flag = False return flag #是否有header def is_header(self,row): col = int(self.data_config.get_header()) header = self.opera_excel.get_cell_value(row,col) return header #根据获取到header值,获取json数据 def get_header_json(self,row): header = self.is_header(row) if header != None: return self.opera_header.get_header_value(header) else: return None #获取请求方式 def get_request_methon(self,row): col = int(self.data_config.get_run_way()) request_method = self.opera_excel.get_cell_value(row,col) return request_method #获取url def get_url(self,row): col = int(self.data_config.get_url()) url = self.opera_excel.get_cell_value(row,col) return url #获取请求数据 def get_request_data(self,row): col = int(self.data_config.get_data()) data = self.opera_excel.get_cell_value(row,col) if data != '': return data else: return None #通过关键字获取data数据 def get_data_for_json(self,row): request_data = self.get_request_data(row) if request_data != None: data = self.opera_json.get_data(request_data) else: return None return data #获取预期结果 def get_except_data(self,row): col = int(self.data_config.get_expect()) request_data = self.opera_excel.get_cell_value(row,col) if request_data !='': return request_data else: return None def write_result(self,row,value): col = int(self.data_config.get_result()) self.opera_excel.write_value(row,col,value) # if __name__ == '__main__': # getdata=GetData() # print(getdata.get_header_json(1)) # print(getdata.get_except_data(1))
class GetData(object): def __init__(self, xlsx): print(xlsx) self.opera_excel = OperationExcel(xlsx) #获取行数 def get_case_line(self): return self.opera_excel.get_rows() #判断是否执行 def get_is_run(self, row): flag = None col = dataconfig.get_isrun() is_run = self.opera_excel.get_cell_value(row, col) if is_run == 'yes': flag = True else: flag = False return flag #判断是否携带cookie def get_cookie(self, row): flag = None col = dataconfig.get_cookie() cookie = self.opera_excel.get_cell_value(row, col) if cookie == 'yes': return dataconfig.get_cookie() else: return None #判断是否有case依赖 def is_depend(self, row): col = dataconfig.get_depend_case() depend = self.opera_excel.get_cell_value(row, col) if depend == '': return None else: return depend #获取请求方式 def get_request_way(self, row): col = dataconfig.get_request_way() request_way = self.opera_excel.get_cell_value(row, col) return request_way #获取url def get_request_url(self, row): col = dataconfig.get_url() url = self.opera_excel.get_cell_value(row, col) return url #获取请求数据 def get_request_data(self, row): col = dataconfig.get_data() data = self.opera_excel.get_cell_value(row, col) if data == '': return None return data #通过请求数据关键字从json获取请求数据 def getdata(self, row, json_data_name=None): opera_json = OperationJson(json_data_name) request_key = self.get_request_data(row) request_data = opera_json.get_data(request_key) if request_data == '': return None else: return request_data #获取依赖数据的key def get_dependent_key(self, row): col = dataconfig.get_depend_key() depend_key = self.opera_excel.get_cell_value(row, col) if depend_key == '': return None else: return depend_key #获取数据依赖字段 def get_dependent_data(self, row): col = dataconfig.get_depend_file() get_dependent_data = self.opera_excel.get_cell_value(row, col) if get_dependent_data == '': return None else: return get_dependent_data #获取预期结果 def get_expect_data(self, row): col = dataconfig.get_expect() expect_data = self.opera_excel.get_cell_value(row, col) if expect_data == '': return None return expect_data #获取写入实际结果行 def write_result(self, row, value): col = dataconfig.get_result() write = self.opera_excel.write_value(row, col, value) if write == '': return None return write
class GetData: def __init__(self): self.oper_excel = OperationExcel() #获取excel行数,就是case个数 def get_case_lines(self): return self.oper_excel.get_lines() #获取是否执行 def get_is_run(self, row): flag = None col = int(data_config.get_run()) run_model = self.oper_excel.get_cell_value(row, col) if run_model == '是': flag = True else: flag = False return flag #获取请求方式 def get_request_method(self, row): col = int(data_config.get_request_way()) request_method = self.oper_excel.get_cell_value(row, col) return request_method #获取url def get_request_url(self, row): col = int(data_config.get_url()) url = self.oper_excel.get_cell_value(row, col) return url # 获取请求头header def get_request_header(self, row): col = int(data_config.get_header()) data = self.oper_excel.get_cell_value(row, col) if data == '': return None else: return data # 通过获取头关键字拿到data数据 def get_header_value(self, row): oper_json = OperationJson( r'E:\pyScript\python3_interface-master\dataconfig\request_header.json' ) request_header = oper_json.get_data(self.get_request_header(row)) return request_header #获取请求数据 def get_request_data(self, row): col = int(data_config.get_data()) data = self.oper_excel.get_cell_value(row, col) if data == '': return None return data #通过获取请求关键字拿到data数据 def get_data_value(self, row): oper_json = OperationJson( r'E:\pyScript\python3_interface-master\dataconfig\request_data.json' ) request_data = oper_json.get_data(self.get_request_data(row)) return request_data #获取预期结果 def get_expect_data(self, row): col = int(data_config.get_expect()) expect = self.oper_excel.get_cell_value(row, col) return expect #写入数据 def write_result(self, row, value): col = int(data_config.get_result()) self.oper_excel.write_value(row, col, value) #获取依赖数据的key def get_depend_key(self, row): col = int(data_config.get_data_depend()) depend_key = self.oper_excel.get_cell_value(row, col) if depend_key == '': return None else: return depend_key #判断是否有case依赖 def is_depend(self, row): col = int(data_config.get_case_depend()) depend_case_id = self.oper_excel.get_cell_value(row, col) if depend_case_id == '': return None else: return depend_case_id #获取请求依赖字段 def get_depend_field(self, row): col = int(data_config.get_field_depend()) data = self.oper_excel.get_cell_value(row, col) if data == '': return None else: return data
class GetData: def __init__(self): self.operation = OperationExcel() # 获取Excel行数,即case的个数 def get_case_lines(self): return self.operation.get_lines() # 获取case名称 def get_case_name(self, row): col = int(data.data_config.get_name()) case_name = self.operation.get_cell_value(row, col) if case_name is not None: return case_name else: return None # 获取是执行 def get_is_run(self, row): flag = None col = int(data.data_config.get_run()) run_if = self.operation.get_cell_value(row, col) if run_if == 'yes': flag = True else: flag = False return flag # 是否携带cookies def get_cookies_value(self, row): col = int(data.data_config.get_cookies()) header = self.operation.get_cell_value(row, col) if header is not None: return header else: return None # 获取header的值 def get_header_value(self, row): col =int(data.data_config.get_header_value()) header_value = self.operation.get_cell_value(row, col) return header_value # get或post def get_request_method(self, row): col = int(data.data_config.get_request_way()) request_mehtod = self.operation.get_cell_value(row, col) return request_mehtod # 获取url def get_request_url(self, row): col = int(data.data_config.get_url()) url = self.operation.get_cell_value(row, col) return url # 获取请求数据 def get_reauest_data(self, row): col = int(data.data_config.get_request_data()) request_data = self.operation.get_cell_value(row, col) if request_data == '': return None return request_data # 通过关键字获取data数据 def get_json_data(self, row): operation1 = OperationJson() json_data = operation1.get_data(self.get_reauest_data(row)) return json_data # 获取预期结果 def get_expect_data(self, row): col = int(data.data_config.get_expect()) expect = self.operation.get_cell_value(row, col) if expect == '': return None return expect # execl写入数据 def write_result(self, row, value): col = int(data.data_config.get_result()) self.operation.write_data(row, col, value) # 获取依赖数据 def get_depentent_key(self, row): col = int(data.data_config.get_depend_data()) depend_key = self.operation.get_cell_value(row, col) if depend_key == '': return None else: return depend_key # 判断是否有case依赖 def case_id(self, row): col = int(data.data_config.get_depend_id()) depent_case_id = self.operation.get_cell_value(row, col) if depent_case_id == '': return None else: return depent_case_id # 获取数据依赖字段 def get_depnet_file(self, row): col = int(data.data_config.get_depend_file()) depent_file = self.operation.get_cell_value(row, col) if depent_file == '': return None else: return depent_file