之前两个章节已经写完再extentreports报告插件与testng 的集成,但是发现 每次测试完后,生成的报告都要在单独发送,每个项目都有一份报告,如果项目多的话,管理起来就会很冗余。

   这个给大家推荐一个extent另一个服务 extentX,这是一个web程序,可以读取数据库(mongodb、redis)中的数据,来生成报告,只要我们把测试的数据都存储在数据库中,就会看到一个很完美的集合报告。

   首先,说一下服务的搭建,我这里用的是mongodb:

 

方法一、MongoDB & NodeJS 在同一台服务器上

  1. 下载安装node.js
  2. 下载安装mongodb
  3. 配置mongodb并运行
  4. 下载extentX,解压到某一目录
  5. 进入解压目录中,使用命令 npm install
  6. 使用命令 sails lift 启动服务
  7. 打开浏览器,使用 IP+端口访问服务,服务默认端口为 1337

方法二、MongoDB & NodeJS 不在同一台服务器上

其他方法同上,只需在方法一中步骤5之前执行操作,

在extentx 中配置一下mongodb 数据库的地址

配置方法如下:

  1. 进入extentx目录下的config 文件夹中
  2. 打开connections.js 文件
  3. 更改host 或者port 即可

extent: {

adapter: 'sails-mongo',

host: 'localhost', // change to host where MongoDB is running

port: 27017, // change toport where MongoDB is running

database: 'extent'

}

   4. 后面同方法一

注:使用npm安装的过程中,可能会需要翻墙下载某些模块

监听中配置,将测试数据写入到数据库中,红色字体为extent报告配置,其中extent.x(…..)为写入数据库配置。若没有此方法,请将报告插件版本升级至 2.41.1

Maven依赖:

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

监听代码:

import java.util.Calendar;
import java.util.Date;
import java.util.List;
import java.util.Map; import org.testng.IReporter;
import org.testng.IResultMap;
import org.testng.ISuite;
import org.testng.ISuiteResult;
import org.testng.ITestContext;
import org.testng.ITestResult;
import org.testng.xml.XmlSuite; import com.relevantcodes.extentreports.DisplayOrder;
import com.relevantcodes.extentreports.ExtentReports;
import com.relevantcodes.extentreports.ExtentTest;
import com.relevantcodes.extentreports.LogStatus;
import com.relevantcodes.extentreports.NetworkMode;
import com.relevantcodes.extentreports.ReporterType; public class ExtentReporterNGListener implements IReporter{ private ExtentReports extent; @Override
public void generateReport(List<XmlSuite> xmlSuites, List<ISuite> suites, String outputDirectory){ extent = new ExtentReports("report/ExtentReport.html", //生成报告文件名
true // true为覆盖已经生成的报告,false 在已有的报告上面生成,不会覆盖旧的结果
,DisplayOrder.NEWEST_FIRST // 最新运行的用例结果在第一个
,NetworkMode.OFFLINE //online 报告的一些样式文件需从网络下载,生成的报告文件小 offline 样式及js文件不会从网络下载,生成在文件中
);
extent.x("10.202.2.1",27017);
extent.addSystemInfo("Host Name", "Anshoo");
extent.addSystemInfo("Environment", "QA"); extent.startReporter(ReporterType.DB, "report/"); //生成本地的DB数据文件 for (ISuite suite : suites) {
Map<String, ISuiteResult> result = suite.getResults(); for (ISuiteResult r : result.values()) {
ITestContext context = r.getTestContext(); buildTestNodes(context.getPassedTests(), LogStatus.PASS);
buildTestNodes(context.getFailedTests(), LogStatus.FAIL);
buildTestNodes(context.getSkippedTests(), LogStatus.SKIP);
}
} extent.flush();
extent.close();
} private void buildTestNodes(IResultMap tests, LogStatus status) {
ExtentTest test; if (tests.size() > 0) {
for (ITestResult result : tests.getAllResults()) {
test = extent.startTest(result.getMethod().getMethodName()); test.setStartedTime(getTime(result.getStartMillis()));
test.setEndedTime(getTime(result.getEndMillis())); for (String group : result.getMethod().getGroups())
test.assignCategory(group); if (result.getThrowable() != null) {
// test.log(status, test.addScreenCapture("../img/"+result.getMethod().getMethodName()+".png"));
test.log(status, result.getThrowable()); }
else {
test.log(status, "Test " + status.toString().toLowerCase() + "ed");
} extent.endTest(test);
}
}
} private Date getTime(long millis) {
Calendar calendar = Calendar.getInstance();
calendar.setTimeInMillis(millis);
return calendar.getTime();
}

最后将此监听器添加入testng配置中,添加方法如下:

aaarticlea/png;base64,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" alt="" />

至此配置已经完毕,每次运行完测试后,请访问一下地址查看报告。

报告效果请看官方网站:

http://extentx.herokuapp.com/#/

就不上贴图了。大家自己去看。

extentreports报告插件之extentX之服务搭建(三)的更多相关文章

  1. extentreports报告插件与testng集成(一)

    前段时间在群里有人说了下用这个插件来生成测试报告,发现生成的报告非常不错.就下来学习了一下,并集成到了testng上,下面来分享一下: ExtentReports (by Anshoo Arora) ...

  2. extentreports报告插件与testng集成

    前段时间在群里有人说了下用这个插件来生成测试报告,发现生成的报告非常不错.就下来学习了一下,并集成到了testng上,下面来分享一下: ExtentReports (by Anshoo Arora) ...

  3. extentreports报告插件与testng集成(二)

    之前的一篇文章中,是把extentreports 的报告的初始方法写在driver的初始方法中,写报告的方法在testng的 onTest中,这次将这些方法全都拆出来,写在一个方法类中,这个类重现实现 ...

  4. Spring Cloud云架构 - commonservice-sso服务搭建(一)

    前面几篇我们已经介绍了Spring Cloud和oauth2的知识点,今天我们要利用Spring Cloud和oauth2进行commonservice-sso服务搭建,本节我们只是搭建commons ...

  5. 使用AWS亚马逊云搭建Gmail转发服务(三)

    title: 使用AWS亚马逊云搭建Gmail转发服务(三) author:青南 date: 2015-01-02 15:42:22 categories: [Python] tags: [log,G ...

  6. ServiceStack.Hello——跨平台.net REST api服务搭建

    ServiceStack.Hello--跨平台.net REST api服务搭建 自己创建: https://github.com/ServiceStack/ServiceStack/wiki/Cre ...

  7. WCFRESTFul服务搭建及实现增删改查

    WCFRESTFul服务搭建及实现增删改查 RESTful Wcf是一种基于Http协议的服务架构风格,  RESTful 的服务通常是架构层面上的考虑. 因为它天生就具有很好的跨平台跨语言的集成能力 ...

  8. 微信小程序语音识别服务搭建全过程解析(项目开源在github)

    silk v3录音转olami语音识别和语义处理的api服务(ubuntu16.04服务器上实现) ## 重要的写在前面 重要事项一: 目前本文中提到的API已支持微信小程序录音文件格式:silk v ...

  9. 微信小程序语音识别服务搭建全过程解析(https api开放,支持新接口mp3录音、老接口silk录音)

    silk v3(或新录音接口mp3)录音转olami语音识别和语义处理的api服务(ubuntu16.04服务器上实现) 重要的写在前面 重要事项一: 所有相关更新,我优先更新到我个人博客中,其它地方 ...

随机推荐

  1. php学习前的准备

    1.用户文档: 官方中文文档:http://www.php.net/manual/zh/ 官方扩展库:http://pecl.php.net/packages.php

  2. 编写中断例程7ch:计算word型数据的平方

    实现计算一个word型数据的平方. 这是安装程序. assume cs:code code segment start: mov ax, cs mov ds, ax mov si, offset sq ...

  3. js模块化AMD/CMD

    JavaSript模块化 在了解AMD,CMD规范前,还是需要先来简单地了解下什么是模块化,模块化开发?     模块化是指在解决某一个复杂问题或者一系列的杂糅问题时,依照一种分类的思维把问题进行系统 ...

  4. POJ1986 Distance Queries (LCA)(倍增)

    Distance Queries Time Limit: 2000MS   Memory Limit: 30000K Total Submissions: 12950   Accepted: 4577 ...

  5. MyEclipse黑色主题

    第一步:打开链接http://www.eclipsecolorthemes.org/选中一款:下载其中的epf格式. 如图: 在eclipse中打开:file > import > Gen ...

  6. sql 查询执行的详细时间profile

    1.查看profile的设置 SHOW VARIABLES LIKE '%profil%' 结果如下:profiling OFF 为关闭状态 2.开启profile 结果: 3.执行需要执行的sql ...

  7. ACM water

    1000  纯属适应题 1003  做的时候花了很久,现在看好像也不难 1004  适应题,求下平均就行 1005  要读懂题就行 1007  逆序数,discuss方法 1046  全部暴搜一遍.. ...

  8. 在Visual Studio中设置多核并行编译

    VS是一款非常强大实用的IDE,是在Windows环境下学习编程的首选软件. 有些时候大一点的工程项目编译要耗时挺长时间,随便修改一下代码就可能要编译将近一分钟,甚至更多.即便在开启的增量编译的情况下 ...

  9. ubuntu系统lamp环境搭建、数据库迁移、设置数据库外部访问

    sudo passwd root设置两次密码su输入设置的密码exit (退出root帐号) 1.sudo apt-get update 2.sudo apt-get install apache2 ...

  10. javascript基础二数据类型

    1.数据类型 javascript中的基本数据类型有4中,undefined,number,string,boolean 1.1 typeof关键字 typeof关键字可以获取一个变量的的类型.先举个 ...