def update_fail_num(self, if_name): """ 更新Fail_num字段 :param if_name: :return: """ type = Base.getApiType(self, if_name) sql = "UPDATE api_pass_rate_wph SET url_target='" + url_target + "',`type`='" + type + "',fail_num=fail_num+1 WHERE if_name = '" + if_name + "';" return Base.query(self, sql)
def insert_ifNameFromTestResult(self): """ 如果api_pass_rate表中没有该条if_name则将if_name插入该表中 :param data: :param table: :return: """ sql = "INSERT INTO api_pass_rate_wph (if_name) SELECT DISTINCT `if_name` FROM test_result WHERE if_name NOT IN(SELECT if_name FROM api_pass_rate_wph);" sql1 = "INSERT INTO api_pass_rate (if_name) SELECT DISTINCT `if_name` FROM test_result WHERE if_name NOT IN(SELECT if_name FROM api_pass_rate);" return Base.query(self, sql), Base.query(self, sql1)
def insert_testResult(self, data): """ 插入一条 :param data: 数据集合 {字段:字段值,} :return: int """ return Base.insert(self, data, self.table)
def delete_ShortUrl(self, where): """ 删除表数据 :param where: 条件 :return: 影响行数 """ return Base.delete(self, self.table, where)
def insert_many_apiPassRateWph(self, data): """ 插入多条 :param data:数据列表 [{field:value...}...] :return: """ return Base.insert_many(self, data, self.table)
def insert_ShortUrl(self, data): """ 插入一条 :param data: 数据集合 {字段:字段值,} :return: int """ return Base.insert(self, data, self.table)
def delete_apiPassRateWph(self, where): """ 删除表数据 :param where: 条件 :return: 影响行数 """ return Base.delete(self, self.table, where)
def insert_apiPassRateWph(self, data): """ 插入一条 :param data: 数据集合 {字段:字段值,} :return: int """ return Base.insert(self, data, self.table)
def insert_many_ShortUrl(self, data): """ 插入多条 :param data:数据列表 [{field:value...}...] :return: """ return Base.insert_many(self, data, self.table)
def delete_apiPerformance(self, where): """ 删除表数据 :param where: 条件 :return: 影响行数 """ return Base.delete(self, self.table, where)
def insert_apiPerformance(self, data): """ 插入一条 :param data: 数据集合 {字段:字段值,} :return: int """ return Base.insert(self, data, self.table)
def get_performanceOrderByIfname(self, type, orderby='if_name', method='esc'): """ 查询表 最近300条最终按照if_name 排序输出 :return: """ sql = "select * from (select * from api_performance order by id desc limit 300) a where type = '" + type + "' order by " + orderby + " " + method + ";" test_result = Base.query(self, sql) return test_result
def update_ShortUrl(self, data, where): """ 更新表 :param data: 数据集合 {field:value...} :param where: "if_name ='a01'" :return: 影响行数 """ return Base.update(self, data, self.table, where)
def get_testResultOrderByIfName(self): """ 查询y接口状态 :param if_name:'a01' :return:[{}] """ kwargs = dict(table=self.table, order='if_name') return Base.select(self, **kwargs)
def get_testResultByIfName(self, if_name): """ 查询y接口状态 :param if_name:'a01' :return:{} """ where = "if_name='%s'" % if_name kwargs = dict(table=self.table, where=where) return Base.select(self, **kwargs)
def get_testShortUrlByTag(self, short_tag): """ 查询y接口状态 :param short_tag:'ssdf' :return:{} """ where = "short_tag='%s'" % short_tag kwargs = dict(table=self.table, where=where) return Base.select(self, **kwargs)
def get_testResultByUrl(self, url): """ 根据url查询全部数据 :param url: :return: """ where = "url_target LIKE '"+url+"%'" kwargs = dict(table=self.table, where=where) return Base.select(self, **kwargs)
def getApiPassRateWphByIfName(self, if_name): """ 查询y接口通过率 :param if_name:'a01' :return:{} """ data = "round(((`pass_num`)/(fail_num+pass_num)*100),2) AS pass_rate, if_name" where = "if_name='%s'" % if_name kwargs = dict(data=data, table=self.table, where=where) return Base.select(self, **kwargs)
def get_apiPerformanceAvgByIfName(self, if_name): """ 查询y接口响应时间 :param if_name:'a01' :return:{} """ data = "if_name,res_time_avg" where = "if_name='%s'" % if_name kwargs = dict(data=data, table=self.table, where=where) return Base.select(self, **kwargs)
def get_apiPerformanceAvgByIfName(self, if_name): """ 查询接口平均响应时间 :param if_name: :return: {} """ data = "round(AVG(res_time),4) as res_time,if_name" where = "if_name='%s'" % if_name kwargs = dict(data=data, table=self.table, where=where) return Base.select(self, **kwargs)
def delete_testResult(self, init=False): """ 删除表数据 :param where: 条件 :return: 影响行数 """ if 'xx' in url_target: where = "url_target like 'xxt%'" else: where = "url_target like 'w%'" return Base.delete(self, self.table, where, init)
def get_one(self, data='', where='', order='', group=''): """ 查询当前表最后一条数据 :param data: :param where: :param order: :param group: :return: """ kwargs = dict(data=data, table=self.table, where=where, limit=1, order=order, group=group) return Base.get_one(self, **kwargs)
def select(self, data='', where='', limit='', order='', group=''): """ 查询当前表 :param data: :param where: :param limit: :param order: :param group: :return: """ kwargs = dict(data=data, table=self.table, where=where, limit=limit, order=order, group=group) return Base.select(self, **kwargs)
def set_test_short_url(self, case_name, short_url_id, short_tag, comment, status, result): """ 插入ui测试用例执行结果 :param response: :param status_code: :param interfacename: :param casename: :param comment: :param result: :param table_name: 指定表名 :return: """ uptm = Base.get_now_time() type = Run.Main data = {'case_name': case_name, 'short_url_id': str(short_url_id), 'short_tag': str( short_tag), 'result': result, 'status': str(status), 'url_target': url_target, 'comment': str( comment), 'type': type, 'uptm': uptm} return self.insert_testShortUlr(data)
def select_todo(self, data='', where='', limit='', order='', group=''): kwargs = dict(data=data, table=self.table, where=where, limit=limit, order=order, group=group) result = Base.select(self, **kwargs) return result
def get_allType(self): data = "DISTINCT type" kwargs = dict(data=data, table=self.table) return Base.select(self, **kwargs)
def __init__(self): Base.__init__(self, who='url') self.table = self.__getTableName()
def update_pass_num(self, if_name): type = Base.getApiType(self, if_name) sql = "UPDATE api_pass_rate_wph SET url_target='" + url_target + "',`type`='" + type + "',pass_num=pass_num+1 WHERE if_name = '" + if_name + "';" return Base.query(self, sql)
def get_testResultByUrl(self, url): where = "url_target LIKE '"+url+"%'" kwargs = dict(table=self.table, where=where) return Base.select(self, **kwargs)
def __init__(self): Base.__init__(self) self.table = self.__getTableName()