1. TestNG 是java 的单元测试框架,功能很强大,很方便,但是自动生成的测试报告有待改善,可以使用TestNg 自带的TestNG_xslt更改TestNG报告的样式,这里主要讲解ReportNg,美化下TestNG 的报告

    TestNg(TestNg官网):

    http://testng.org/doc/index.html

    ReportNg(ReportNg官网):

    http://reportng.uncommons.org/

    mavenTestNg(在Maven下配置TestNg):

    http://maven.apache.org/surefire/maven-surefire-plugin/examples/testng.html

    mavenReportNg(在Maven下配置ReportNg 需要翻墙了):

    https://solidsoft.wordpress.com/2011/01/23/better-looking-html-test-reports-for-testng-with-reportng-maven-guide/

    ReportNg 官方提供的可以使用Ant Build 项目,同样也可使用maven,Gradle,这是使用maven


    1. 首先确定已经建好了maven 项目,已经添加了TestNg类,生成了testNG.xml,pom.xml


    2. 在项目下建一个res文件夹用来统一存放我们的testNg.xml文件,方便运行不同的testNg.xml (使用maven运行的时候,只需要在Pom.xml修改引用不同的testNg.xml即可)

      结构如下:


    3. 修改maven 的Pom文件如下:

      <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
      <modelVersion>4.0.0</modelVersion>
      <groupId>MavenTestNg</groupId>
      <artifactId>MavenTestNg</artifactId>
      <version>0.0.1-SNAPSHOT</version> <!-- maven 运行测试name -->
      <name>Report_Test</name>
      <url>http://maven.apache.org</url> <!-- maven 引用远程库 -->
      <repositories>
      <repository>
      <id>java-net</id>
      <url>http://download.java.net/maven/2</url>
      </repository>
      </repositories> <!-- maven 参数配置,这里引用不同的testng.xml -->
      <properties>
      <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
      <xmlFileName>testng.xml</xmlFileName>
      </properties> <!-- maven 引用依赖不同的jar -->
      <dependencies> <!-- 依赖testNg -->
      <dependency>
      <groupId>org.testng</groupId>
      <artifactId>testng</artifactId>
      <version>6.8.8</version>
      <scope>test</scope>
      </dependency> <!-- 依赖reportNg 关联testNg-->
      <dependency>
      <groupId>org.uncommons</groupId>
      <artifactId>reportng</artifactId>
      <version>1.1.4</version>
      <scope>test</scope>
      <exclusions>
      <exclusion>
      <groupId>org.testng</groupId>
      <artifactId>testng</artifactId>
      </exclusion>
      </exclusions>
      </dependency> <!-- 依赖Guice -->
      <dependency>
      <groupId>com.google.inject</groupId>
      <artifactId>guice</artifactId>
      <version>3.0</version>
      <scope>test</scope>
      </dependency>
      </dependencies> <build>
      <plugins>
      <!-- 添加插件 关联testNg.xml -->
      <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-surefire-plugin</artifactId>
      <version>2.17</version>
      <configuration>
      <suiteXmlFiles>
      <suiteXmlFile>res/${xmlFileName}</suiteXmlFile>
      </suiteXmlFiles>
      </configuration>
      </plugin> <!-- 添加插件,添加ReportNg的监听器,修改最后的TestNg的报告 -->
      <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-surefire-plugin</artifactId>
      <version>2.5</version>
      <configuration>
      <properties>
      <property>
      <name>usedefaultlisteners</name>
      <value>false</value>
      </property>
      <property>
      <name>listener</name>
      <value>org.uncommons.reportng.HTMLReporter, org.uncommons.reportng.JUnitXMLReporter</value>
      </property>
      </properties>
      <workingDirectory>target/</workingDirectory>
      <forkMode>always</forkMode>
      </configuration>
      </plugin>
      </plugins>
      </build>
      </project>

      这样基本就可以了,修改完pom文件,会看到jar已经依赖完成

    4. testNg.xml 不需要修改

    5. 之后右键运行pom.xml,选择maven test 即可
    6. 之后查看控制台如图:

    7. 使用maven 插件运行之后,在target 里面查看测试报告,Html下的index.html 就是reportNg 生成的报告


  2. 这样就可以完成了,除了ReportNg ,可以美化TestNg 的报告以外,还有testNG_xslt

版权声明:本文为博主原创文章,未经博主允许不得转载。

Mac Eclipse+Maven+TestNg+ReportNg 生成测试报告的更多相关文章

  1. Eclipse+Maven+TestNg+ReportNg 生成测试报告

    http://blog.csdn.net/a542551042/article/details/46729585

  2. Idea+maven+testng+reportng生成测试报告

    TestNG自带的测试报告不是很好用,所以一般结合reportng生成美观的测试报告. 首先,在pom.xml中添加testng和reportng相关依赖 <dependencies> & ...

  3. TestNG之使用ReportNG生成测试报告

    TestNG使用ReportNG生成测试报告会更加美观. 依赖包 <!--testNG报告依赖包--> <dependency> <groupId>org.test ...

  4. Appium+Maven+TestNG(ReportNG)环境搭建(详细过程)

    最近群里经常有人会问到关于maven构建Appium测试项目以及使用testNG生成测试报告的问题,试着搭建了一下,下面是过程: jdk安装过程我这里就不说了 一.下载eclipse,推荐下载Ecli ...

  5. Maven+TestNG+ReportNG/Allure接口自动化测试框架初探(上)

    转载:http://www.51testing.com/html/58/n-3721258.html 由于一直忙于功能和性能测试,接口自动化测试框架改造的工作被耽搁了好久.近期闲暇一些,可以来做点有意 ...

  6. CentOS下搭建自动化测试基础框架:Jenkins+Maven+TestNG+ReportNG

    1. 安装JDK 1.1 卸载系统默认已安装的open-jdk rpm -qa|grep java 查出来openjdk相关的应用,把查出来的所有都要通过下面的命令给卸载掉 rpm -e --node ...

  7. mac eclipse maven tomcat 运行错误 tomcat HTTP Status 404

    在mac系统下安装好eclipse, maven以及tomcat, 之后运行一个web的helloworld项目,出现错误 tomcat HTTP Status 404. 查看eclipse cons ...

  8. eclipse maven testng

    安装过程: 1.eclipse官网下载:

  9. mac eclipse maven -solved

    最近开始用mac,在开始之初体验到了mac系统的丝滑流畅,但也感受到重新开始学习一个平台的坡度. 最近学习maven,创建项目时总是报错,网上查阅到的资料很少.最后在settings.xml中添加了阿 ...

随机推荐

  1. Linux gcc/g++下GDB调试及其调试脚本的使用

    GDB调试及其调试脚本的使用返回脚本百事通一.GDB调试 1.1. GDB 概述 GDB 是GNU开源组织发布的一个强大的UNIX下的程序调试工具.或许,各位比较喜欢那种图形界面方式的,像VC.BCB ...

  2. POJ2069 最小球体覆盖, 模拟退火

    只是套了个模板,模拟退火具体的过程真心不懂阿 //#pragma comment(linker, "/STACK:16777216") //for c++ Compiler #in ...

  3. The Hungarian algorithm Template

    The Hungarian algorithm with The adjacency matrix : 计算最大匹配问题 int n1, n2, m, ans; int res[MAXN]; bool ...

  4. 观django-messages包笔记

    django_messages是一个提供注册用户之间互相发送消息的django app.最近在研究其实现机制,安装测试非常容易,导入包,配好url以及syncdb生成数据库即可使用. 一.收获一: 我 ...

  5. 界面控件 - 滚动条ScrollBar(对滚动条消息和鼠标消息结合讲的不错)

    界面是人机交互的门户,对产品至关重要.在界面开发中只有想不到没有做不到的,有好的想法,当然要尝试着做出来.对滚动条的扩展,现在有很多类是的例子. VS2015的代码编辑是非常强大的,其中有一个功能可以 ...

  6. Android实现 再按一次退出 的三种方法 durationTime、timerTask 和Handler

    目前很多Android应用都会实现按返回键时提示“再按一次推退出” 在这篇文章中总结了各家的方法,一般都是监听Activity的onKeyDown 或者onBackPressed方法 方法一: 直接计 ...

  7. vector的成员函数解析

    vector是线性容器,它的元素严格的依照线性序列排序,和动态数组非常相似,和数组一样,它的元素存储在一块连续的存储空间中,这也意味着我们不仅能够使用迭代器(iterator)訪问元素,还能够使用指针 ...

  8. [置顶] CSS+DIV总结

         HTML在Web飞速发展的过程中起着重要作用,有着重要地位.HTML初衷是为了表达标签(<p>.<table>)的内容信息.同时文档布局由浏览器来完成,不使用任何格式 ...

  9. java--join方法

    package MyTest; class TestDemo implements Runnable { public void run() { int i = 0; for (int j = 0; ...

  10. APP迁移

    APP架子迁移 在完成上一篇之后,断断续续的开始重构我的Android项目代码,现在终于完成了.在重构期间又仔细阅读了一些开源项目的源码及文章,并询问了一些大神思路,按照理解自己完成了MVP结构的重构 ...