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(object): def __init__(self): self.opera_excel = OperationExcel() self.json_data = OperationJson() # 获取excel的行数,就是case的数量 def get_case_lines(self): return self.opera_excel.get_rows() # 获取是否执行参数,循环行数,输入列数 def get_is_run(self, row): flag = None col = int(data_config.get_run()) is_run = self.opera_excel.get_value(row, col) if is_run == 'yes': flag = True else: flag = False return flag #获取是否需要header参数 def get_is_header(self, row): col = int(data_config.get_header()) is_header = self.opera_excel.get_value(row, col) if is_header == 'yes': # 写死在data_config模块中 return data_config.get_header_value() else: return None # 获取请求方式 def get_request_method(self, row): col = int(data_config.get_run_type()) request_method = self.opera_excel.get_value(row, col) return request_method # 获取url def get_request_url(self, row): col = int(data_config.get_url()) request_url = self.opera_excel.get_value(row, col) return request_url # 获取请求数据的关键字字段 def get_request_data(self, row): col = int(data_config.get_data()) request_data = self.opera_excel.get_value(row, col) if request_data == '': return None else: return request_data # 通过获取的关键字在自定义的json中拿到对应的data数据 def get_data_json(self, row): request_json_data = self.json_data.get_data(self.get_request_data(row)) return request_json_data # 获得预期结果 def get_expected_results(self, row): col = int(data_config.get_expect()) expected_results = self.opera_excel.get_value(row, col) if expected_results == '': return None else: return expected_results # 写入结果 def write_result(self, row, value): col = int(data_config.get_result()) self.opera_excel.revise_value(row, col, value) # 获取依赖数据的字段 def get_depend_key(self, row): col = int(data_config.get_data_depend()) data = self.opera_excel.get_value(row, col) if data == '': return None else: return data # 判断是否需要依赖 def is_denpend(self, row): col = int(data_config.get_case_depend()) data = self.opera_excel.get_value(row, col) if data == '': return None else: return data # 获取数据依赖字段 def get_depend_file(self, row): col = int(data_config.get_field_depend()) data = self.opera_excel.get_value(row, col) if data == None: return None else: return data # if __name__ == '__main__': # getdata = GetData() # print(getdata.get_request_url(11))