示例#1
0
class TestCase:
    def __init__(self):
        self.opera_execl = OperationExcel()
        self.base_driver = BaseDriver()

    def run_main(self):
        row_num = self.opera_execl.get_rows()
        for i in range(1, row_num):
            is_run = self.opera_execl.get_cell(i, 2)
            if is_run == "no":
                method = self.opera_execl.get_cell(i, 3)
                opera = self.opera_execl.get_cell(i, 4)
                send_value = self.opera_execl.get_cell(i, 5)
                self.run_method(method, opera, send_value)

    def run_method(self, method, opera, send_value):
        base_driver_function = getattr(self.base_driver, method)
        if send_value == "":
            if opera == "":
                base_driver_function()
            else:
                base_driver_function(opera)
        else:
            base_driver_function(opera, send_value)
示例#2
0
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
示例#3
0
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))