You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为pabot生成的HTML测试结果报告设置自定义文件名

文件名加时间戳解决方案

核心实现逻辑为在生成报告文件名的环节,先生成符合YYYYMMDDHHmm格式的24小时制时间戳,再拼接进文件名即可,完全匹配你需要的report-202111181704.html格式要求。以下是不同常用执行场景的具体实现:

1. Shell脚本环境(crontab定时执行场景)

如果是用Shell脚本搭配定时任务执行测试,直接调用系统date命令生成时间戳即可:

# 生成符合要求的24小时制时间戳
timestamp=$(date +"%Y%m%d%H%M")
# 拼接得到最终报告文件名
report_filename="report-${timestamp}.html"

# 替换你原本的测试执行命令即可,以pytest为例
pytest --html=${report_filename} ./test_cases

2. Python环境(Python测试框架场景)

如果用Python编写测试用例、使用pytest等框架,调用datetime模块生成时间戳即可:

from datetime import datetime

# 生成指定格式时间戳
timestamp = datetime.now().strftime("%Y%m%d%H%M")
report_filename = f"report-{timestamp}.html"

# 示例:pytest执行测试并生成对应名称的报告
import pytest
if __name__ == "__main__":
    pytest.main(["--html", report_filename, "./test_cases"])

3. Node.js环境(前端测试/JS测试框架场景)

如果用JS技术栈做测试,通过Date对象生成时间戳即可:

const now = new Date();
// 补前导零工具函数
const pad = num => num.toString().padStart(2, '0');
const timestamp = `${now.getFullYear()}${pad(now.getMonth()+1)}${pad(now.getDate())}${pad(now.getHours())}${pad(now.getMinutes())}`;
const reportFilename = `report-${timestamp}.html`;

// 示例:mochawesome报告生成配置
// mocha ./test --reporter mochawesome --reporter-options reportFilename=${reportFilename}

无侵入替代方案(无需修改测试代码)

如果不想改动测试框架的报告生成配置,可以在测试执行完成后直接重命名固定生成的报告文件,适配所有测试框架:

# 假设你原本固定生成的报告名为report.html
timestamp=$(date +"%Y%m%d%H%M")
mv report.html report-${timestamp}.html

只需要在你的执行脚本末尾增加一行重命名命令即可生效。

内容的提问来源于stack exchange,提问作者Pandarian Ld

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 15:54:03