【问题标题】:Emailed extent reports doesn't load screenshots通过电子邮件发送的范围报告不加载屏幕截图
【发布时间】:2019-01-25 15:40:17
【问题描述】:

我正在尝试以电子邮件的形式发送我的范围报告。报告正在发送。问题是电子邮件中缺少我的范围报告中的屏幕截图。如果我在本地设备中打开报告,屏幕截图就在那里。

这是为了进行 Selenium 测试。我正在为我的日志使用范围报告。我正在尝试以电子邮件的形式发送我的范围报告。报告正在发送。问题是电子邮件中缺少我的范围报告中的屏幕截图。如果我在本地设备中打开报告,屏幕截图就在那里。下面是我的 Listeners.java 的代码

import com.relevantcodes.extentreports.ExtentReports;
import com.relevantcodes.extentreports.ExtentTest;
import com.relevantcodes.extentreports.LogStatus;

public class Listeners implements ITestListener {

     protected static WebDriver driver;
     protected static ExtentReports reports;
     public static ExtentTest test;
     Base B = new Base();

    public void onTestStart(ITestResult result) {
          test = reports.startTest(result.getMethod().getMethodName());
          test.log(LogStatus.INFO, result.getMethod().getMethodName() + " test started");
         }


    public void onTestSuccess(ITestResult result) {
          test.log(LogStatus.PASS, result.getMethod().getMethodName() + " test passed");
         }

    public void onTestFailure(ITestResult result) {
          test.log(LogStatus.FAIL, result.getMethod().getMethodName() + " test failed");
          try {
            B.getScreenshot(result.getName());

   String file = 
    test.addScreenCapture("/Users/username/Documents/Eclipse-Workspace/Test/test-output/"+result.getName()+"screenshot.png");
            test.log(LogStatus.FAIL, result.getMethod().getMethodName() + "test failed", file);

        } catch (IOException e) {
            e.printStackTrace();
        }
    }

    public void onTestSkipped(ITestResult result) {
          test.log(LogStatus.SKIP, result.getMethod().getMethodName() + " test skipped");

    }




    public void onStart(ITestContext context) {
        System.out.println("Started");
          driver = new ChromeDriver(); 
         reports = new ExtentReports( "./test-output/Extentreports.html");      
    }

    public void onFinish(ITestContext context) {
          driver.close();
          reports.endTest(test);
          reports.flush();

    }

}

我希望在收到电子邮件时查看测试失败的屏幕截图。但是现在我在通过电子邮件发送的范围报告中看到了一个空白缩略图。

【问题讨论】:

    标签: java email extentreports


    【解决方案1】:

    过去曾多次提出过这个问题。快速搜索会为您指明正确的方向。

    解决方案是将报告连同屏幕截图以 zip 文件的形式通过电子邮件发送,并确保图像相对于 Html 文件保存。

    【讨论】:

    • 如果这个问题在过去被多次提出,应该有重复。在这种情况下,您不应该回答,而是投票关闭作为重复。
    猜你喜欢
    • 2011-05-04
    • 1970-01-01
    • 2018-11-28
    • 2012-07-20
    • 2012-09-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多