使用extentreports美化报告

无意之间在整理testng 报告输出的文档时,发现一个美化testng的报告的插件,感觉确实“漂亮”,但是还不确定是否实用,案例来自官方网站自己添了一些内容,更改了存放路径,本地目前已确定可正常运行,官方网址:http://extentreports.com/documentation/version-2/

1.配置maven依赖

<dependency>
			    <groupId>com.relevantcodes</groupId>
			    <artifactId>extentreports</artifactId>
			    <version>2.40.2</version>
			</dependency>

2.创建一个测试类,我是mytest

自己添加了5个测试方法,3个正确,2个错误

image

查看展示效果

11

image

image

 

demo代码

 

package com.test.appuimtest;

import org.apache.tools.ant.util.facade.FacadeTaskHelper;
import org.testng.Assert;
import org.testng.ITestResult;
import org.testng.annotations.AfterMethod;
import org.testng.annotations.AfterSuite;
import org.testng.annotations.BeforeSuite;
import org.testng.annotations.Test;

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

import until.publicmethod;

public class mytest {
    public class SingleLogTest extends BaseExample {
        @Test
        public void passTest() {
            test = extent.startTest("passTest");
            test.log(LogStatus.PASS, "Pass");
            Assert.assertEquals(test.getRunStatus(), LogStatus.PASS);
        }
        
        @Test
        public void intentionalFailure() throws Exception {
            test = extent.startTest("intentionalFailure");
            throw new Exception("intentional failure");        
        }
        
        @Test
         public void Mytest1(){
              test = extent.startTest("Mytest1");
              Assert.assertTrue(true);
         }
        @Test
         public void Mytest2(){
              test = extent.startTest("Mytest2");
              Assert.assertTrue(true);
         }
        @Test
         public void Mytest3(){
              test = extent.startTest("Mytest2");
              Assert.assertTrue(false);
         }
    }

    public static class ExtentManager {
        private static ExtentReports extent;
        
        public synchronized static ExtentReports getReporter(String filePath) {
            if (extent == null) {
                extent = new ExtentReports(filePath, true);
                
                extent
                    .addSystemInfo("Host Name", "Anshoo")
                    .addSystemInfo("Environment", "QA");
            }
            
            return extent;
        }
    }

    public abstract class BaseExample {
        protected ExtentReports extent;
        protected ExtentTest test;  
        final String filePath = "d:\\Extent.html"; //这里需要更改创建的存放路径

        @AfterMethod
        protected void afterMethod(ITestResult result) {
            if (result.getStatus() == ITestResult.FAILURE) {
                test.log(LogStatus.FAIL, result.getThrowable());
            } else if (result.getStatus() == ITestResult.SKIP) {
                test.log(LogStatus.SKIP, "Test skipped " + result.getThrowable());
            } else {
                test.log(LogStatus.PASS, "Test passed");
            }
            
            extent.endTest(test);        
            extent.flush();
        }
        
        @BeforeSuite
        public void beforeSuite() {
            extent = ExtentManager.getReporter(filePath);
        }
        
        @AfterSuite
        protected void afterSuite() {
            extent.close();
        }
    }
}

 

  

 

 在继续补充,发现在报告下面还可以增加图片和视频,添加出来的效果如下

 

转载于:https://www.cnblogs.com/chongyou/p/7518959.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值