ExtentReport用于生成测试报告,外观炫酷,并且涵盖信息非常全面。我们来学习下它的使用
extentReport官网:http://extentreports.com/
一、配置依赖
首先在pom文件配置extentReport依赖
二、示例代码
引入ExtentReport后我们来编写一个示例,这里需要用到testng的断言,会使用常用的assertEquals方法,简单的说一下这个方法可以判断 actualValue(实际值)与expectedValue(期望值)是否一致,如果两者不一致,则会抛出 java.lang.AssertionError错误,打印出message(如果参数中有message的话),并跳出这个测试方法。
三、配置文件
我们在resources里面创建配置文件这里我们要在suite里面添加一个监听器
四、样式加载不到问题
至此我们就完成这示例,运行xml文件后我们在项目中看到多出了test-output这个文件夹我们将report.html在浏览器中打开,但是得到的并不是我们想要的样式,只是因为防火墙的保护cdn.rawgit.com访问不了css样式加载不出来
这里样式我们通过网上搜索解决方法都会得到自己定义一个listener来解决样式加载不到,那么我们采用这个方法
package com.tester.extent.demo;
import com.aventstack.extentreports.ExtentReports;
import com.aventstack.extentreports.ExtentTest;
import com.aventstack.extentreports.ResourceCDN;
import com.aventstack.extentreports.Status;
import com.aventstack.extentreports.model.TestAttribute;
import com.aventstack.extentreports.reporter.ExtentHtmlReporter;
import com.aventstack.extentreports.reporter.configuration.ChartLocation;
import com.aventstack.extentreports.reporter.configuration.Theme;
import org.testng.*;
import org.testng.xml.XmlSuite;
import java.io.File;
import java.util.*;
public class ExtentTestNGIReporterListener implements IReporter{
//生成的路径以及文件名