【发布时间】:2018-02-01 10:20:33
【问题描述】:
我最近将我的项目从 JUnit5 转换为 TestNG,只是为了获得体面的报告。
我添加了一个监听器,在每次运行结束时生成报告:
@Override
public void onFinish(ITestContext context) {
System.out.println("FINISH. Sending email report.");
utils.EmailHandler.sendEmail("Finished test", context.toString());
}
我的问题是,通过电子邮件发送的报告不是来自当前运行(如所愿),而是上一次运行。
但是,如果我使用 Eclipse IDE 打开 /test-output/custom-report.html 中的报告,它就是正确的!
如何确保发出的电子邮件是最新的?
我在这里看过几个类似的问题,但都不适合我:
类似问题:
TestNg emailable-report is not updating?
ReportNG HTML report not updating
当我将对 sendEmail 的调用移至侦听器的 GenerateReport 方法的末尾时,它终于起作用了。这消除了所有混乱,并确保输出文件在尝试发送之前是完整的。
【问题讨论】:
-
请发布一些代码以显示文件的创建方式/时间!