先把我自定义内容后的报告截个图给你们看
一、Allure 浏览器窗口文案自定义
-
我们只需要找到生成的 Allure 的 HTML 测试报告,修改 title 字段内容
-
写个 set_windos_title 方法,并在 run.py 的执行文件去调用
# 设置报告窗口的标题 def set_windos_title(new_title): """ 设置打开的 Allure 报告的浏览器窗口标题文案 @param new_title: 需要更改的标题文案 【 原文案为:Allure Report 】 @return: 没有返回内容,调用此方法传入需要更改的文案即可修改窗体标题温拿 """ # report_title_filepath:这里主要是去拿到你的HTML测试报告的绝对路径【记得换成你自己的】 report_title_filepath = r"E:\project_pytest\report_allure\index.html" # 定义为只读模型,并定义名称为: f with open(report_title_filepath, 'r+',encoding="utf-8") as f: # 读取当前文件的所有内容 all_the_lines = f.readlines() f.seek(0) f.truncate() # 循环遍历每一行的内容,将 "Allure Report" 全部替换为 → new_title(新文案) for line in all_the_lines: f.write(line.replace("Allure Report", new_title)) # 关闭文件 f.close()
-
在 run.py 文件进行方法调用
# 自定义测试报告标题 set_windos_title("自动读取Excel自动化脚本")
二、自定义 Allure 报告左上角 logo 图标
-
找到你的 allure 安装目录下的:D:\xxx\allure-2.15.0\config\allure.yml 文件
-
编辑文件,在最后一行添加:- custom-logo-plugin
-
找到 allure 安装目录:D:\xxx\allure-2.15.0\plugins\custom-logo-plugin\static,替换图标文件,并修改 .css 文件参数
三、自定义测试标题文案
-
我们仅需要更改:E:\project_pytest\report_allure\widgets\summary.json 文件中的 reportName 字段内容即可
-
我们写两个方法,来传递并修改测试报告文本内容
import json # 测试报告文案获取的文件地址 title_filepath = r"E:\project_pytest\report_allure\widgets\summary.json" # 获取 summary.json 文件的数据内容 def get_json_data(name): # 定义为只读模型,并定义名称为f with open(title_filepath, 'rb') as f: # 加载json文件中的内容给params params = json.load(f) # 修改内容 params['reportName'] = name # 将修改后的内容保存在dict中 dict = params # 关闭json读模式 f.close() # 返回dict字典内容 return dict # 写入json文件 def write_json_data(dict): # 定义为写模式,名称定义为r with open(title_filepath, 'w', encoding="utf-8") as r: # 将dict写入名称为r的文件中 json.dump(dict, r, ensure_ascii=False, indent=4) # 关闭json写模式 r.close()
-
在 run.py 文件进行方法调用
# 自定义测试报告标题 report_title = get_json_data("自动化测试报告") write_json_data(report_title)