接口测试之allure报告优化(一)

接口测试常用到allure报告,因其显示信息种类多且兼容框架丰富,但其不同附件的的格式会导致报告内容不友好,影响阅读,本文介绍两处优化内容。

  1. 过滤报告中suite模块显示的用例信息(多余状态码、请求URL等)
  2. 附件信息美化(txt文本格式优化)

现状如下图红框内容:

问题1:

通过F12查看,左侧框选内容显示j对应case执行结果中son文件的parameters字段值(如下图),因此只需要在生成报告/执行case时将该文件中的字段值赋空即可

方法:

def find_files(path, target='result.json'):
     """
    先找到报告目录下所有符合结果的文件,为下文提供路径参数
    :param path: 执行结果/报告文件中所有执行结果文件(包含result.josn(本次目标文件)以及其他附件文件)
    :target: 文件特征,寻找包含
    """
    path_list = []
    for root, dirs, files in os.walk(path):
        for file in files:
            file_path = os.path.join(root, file)
            if target in file_path:
                path_list.append(file_path)
                # clear_data(file_path)
    return path_list
def clear_data(dir):
    """
    报告美化,将result.json文件清除parameters字段数据
    :param dir: 报告/执行结果中的result.json文件路径
    :return:
    """
    with open(dir, 'rb') as f:
        data = json.load(f)
    data['parameters'] = []
    with open(dir, "w") as file:
        json.dump(data, file)
    file.close()
    return True
至此,报告美化完成,用例名称旁不在展示多余字段值,结果如下:                 

问题2:附件中的内容显示样式有些是json格式,有些是纯文本格式,打开F12查看,附件为不同接口读取数据导致

找到执行结果/报告中对应的附件数据,发现json文件现实为json格式,txt文件显示为str格式,如下图所示:

因此,我们尝试将执行结果/报告的txt文件中的格式改为json格式,用以下方法实现:

def Txt_toJson(dir):
    """
    报告美化,将附件中的txt文件内容转换成json格式
    :param dir:txt文件路径
    :return:
    """
    try:
        with open(dir, 'rb') as f:
            json_data = json.load(f)
        formatted_json = json.dumps(json_data, indent=4)
        with open(dir, 'w') as w:
            w.write(formatted_json)
        w.close()
    except:
        print("该文件不是dict格式,无法转换")
    return True

查看是否生效:

至此,报告优化完成,以上两个问题均已解决,如下图:

  • 9
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值