Java [求助] ExtentReport 没有生成测试报告

cheunghr · 2019年01月15日 · 最后由 cheunghr 回复于 2019年04月26日 · 2356 次阅读

指定了 ExtentReport 生成目录,但并未生成 ExtentReport 报告

package com.cases;

import java.util.concurrent.TimeUnit;

import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import org.testng.annotations.AfterClass;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.Test;

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

public class EmailLoginCase {

WebDriver driver;
EmailLoginPage emailLoginPage;
ExtentReports extentReports;
ExtentTest extentTest;

@BeforeClass
public void setUp() {
System.setProperty("webdriver.chrome.driver", "D:\\selenium_drivers\\chromedriver.exe");
driver = new ChromeDriver();
extentReports = new ExtentReports("D:\1.html");
extentTest = extentReports.startTest("EmailLogin");
emailLoginPage = new EmailLoginPage(driver);
driver.manage().window().maximize();
driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
driver.get("https://mail.qq.com/");
extentTest.log(LogStatus.INFO, "LogStatus.INFO");
}

@Test
public void testLogin() {
emailLoginPage.sendUsername("xx");
emailLoginPage.sendPassword("xx");
emailLoginPage.clickLoginButton();
}

@AfterClass
public void cleanUp() throws Exception{
Thread.sleep(3000);
driver.quit();
extentReports.endTest(extentTest);
}
}

共收到 9 条回复 时间 点赞

指定了 ExtentReport 生成目录,但并未生成 ExtentReport 报告

运行环境 chrome71.0+jdk1.8+win10

楼主ExtentReports有没有实现TestNGIReporter接口

onesbyones 回复

没有实现,使用的 maven extentreport for selenium jar 包

cheunghr 回复

官方文档给出的是,实现IReporter接口就能在用例执行完成后生成index.html文件于test-output目录中

onesbyones 回复

我记得我以前用的时候,直接在 testngxml 中添加监听器就行,但是昨天看教学视频,那位老师直接构造函数确定报告生成目录

已经解决。记得 flush 和 close。。。

cheunghr 回复

我也不生成报告,你是怎么解决的

Polly 回复

1.如果你是通过监听器方式来生成报告的,需要在 eclipse-windows-preference 中添加监听器类

2.如果你是像我这样在代码上使用 extentreports,记得最后调用 flush。。。。

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册