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

Extent Report生成的HTML报告空白无数据,求技术排查解决

解决Extent Report生成空白HTML报告的问题

嘿,我碰到过好几次这种情况——代码跑起来没报错,但Extent Report生成的HTML居然是空的。结合你的代码来看,大概率是初始化方式或者版本兼容的问题,给你几个具体的修复方向:

1. 换掉旧版的Extent Reports初始化写法

你用的new ExtentReports("\\Reports\\LoginPageReport.html", true);是Extent Reports 2.x的老写法,如果你现在用的是3.x及以上版本,这种初始化方式早就被废弃了,会导致报告无法正确写入日志内容。

改成适配3.x+的初始化代码

把@BeforeTest里的初始化逻辑换成下面这样:

@BeforeTest
public void setup() 
{
    // 获取项目根目录,拼接报告路径,避免路径问题
    String reportPath = System.getProperty("user.dir") + "\\Reports\\LoginPageReport.html";
    // 创建HTML报告生成器
    ExtentHtmlReporter htmlReporter = new ExtentHtmlReporter(reportPath);
    // 初始化ExtentReports核心对象
    report = new ExtentReports();
    // 将HTML报告器关联到核心对象
    report.attachReporter(htmlReporter);
    
    logger = report.startTest("VerifyLoginPage", "This page will verify signout link");
    driver = BrowserFactory.getBrowser("chrome");
    driver.get(DataProviderFactory.getConfig().getApplicationUrl());
    logger.log(LogStatus.INFO, "Application is up and running");
}

2. 确保报告路径和文件夹存在

你原来的路径"\\Reports\\LoginPageReport.html"是相对路径,可能会生成到项目外的目录;如果Reports文件夹不存在,程序虽然不报错,但会无法创建报告文件,最终导致空白。用System.getProperty("user.dir")能确保路径是项目根目录下的,另外手动创建Reports文件夹或者在代码里加个判断创建文件夹的逻辑会更稳妥。

3. 调整报告写入和浏览器关闭的顺序

你的@AfterTest里先关浏览器再处理报告,虽然理论上没问题,但有时候浏览器关闭时的线程操作可能会干扰报告的写入。建议先完成报告的收尾再关闭浏览器:

@AfterTest
public void tearDown()
{
    report.endTest(logger);
    report.flush(); // 先把日志写入报告
    BrowserFactory.closeBrowser(driver); // 再关闭浏览器
}

4. 检查依赖版本是否匹配

如果用的是Extent Reports 4.x及以上版本,LogStatus已经被Status枚举替代了,比如要写成logger.log(Status.INFO, "Application is up and running");。所以要确保你的代码API和依赖版本一致,比如Maven的4.x依赖:

<dependency>
    <groupId>com.aventstack</groupId>
    <artifactId>extentreports</artifactId>
    <version>4.1.5</version>
</dependency>

按上面的步骤调整后,再运行测试,应该就能生成有内容的报告了。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.20 10:20:33