您的位置:首页 > 其它

TestNG+ReportNG+Maven优化测试报告

2018-02-11 15:35 417 查看
转载:https://www.cnblogs.com/hardy-test/p/5354733.html

首先在eclipse里面创建一个maven项目,具体要配置maven环境,请自行百度搭配环境。eclipse里面创建成功以后,会生成一个pom.xml配置文件,我们需要在里面配置必须的jar包。以下所需的jia包都是必须要有的。

<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.9.10</version>

<scope>test</scope>

</dependency>

<dependency>

<groupId>com.google.inject</groupId>

<artifactId>guice</artifactId>

<version>4.0</version>

</dependency>

<!-- 依赖reportNg 关联testNg -->

<dependency>

<groupId>org.uncommons</groupId>

<artifactId>reportng</artifactId>

<version>1.1.5</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>4.0</version>

<scope>test</scope>

</dependency>

<dependency>

<groupId>velocity</groupId>

<artifactId>velocity-dep</artifactId>

<version>1.4</version>

</dependency>

<dependency>

<groupId>log4j</groupId>

<artifactId>log4j</artifactId>

<version>1.2.17</version>

</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>

在eclipse里面编写几个测试类,简单编写了几个。大家可以自己编写自己测试类。我这里简单些了3个测试类。


由于我们要引用reportNG生成的报告,所以pom.xml第一步我已经把usedefaultlisteners已经改成了false。

修改testng.xml文件,进行测试用例的执行。重点在class name:如果你出现了测试用例无法运行的情况,请在class name类名前面写上对应的包名即可。建议以后都按照这种格式去写。


<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">

<suite name="TestNG 项目报告">

<test name="第一组测试">

<classes>

<class name="Demo.test.demoTestng.demo01Test"></class>

</classes>

</test> <!-- Test -->

<test name="第二组测试">

<classes>

<class name="Demo.test.demoTestng.demo02Test"></class>

</classes>

</test>

<test name="第三组测试">

<classes>

<class name="Demo.test.demoTestng.demo03Test"></class>

</classes>

</test>

<listeners>

<listener class-name="org.uncommons.reportng.HTMLReporter" />

<listener class-name="org.uncommons.reportng.JUnitXMLReporter" />

</listeners>

</suite> <!-- Suite -->

点击testng.xml运行testng测试,执行完成以后,在html中查看测试报告:

用浏览器打开后的效果如下:


​我这边只是简单的配置了一下testng+Maven+reportNG组合生成了比较美化后的效果。大家有什么问题,可以一起讨论共同学习哈。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: