Maven项目中引用自定义的reportng.jar包
一、前言
Maven官方的reportng.jar更新到1.1.4版本之后就很久没有再更新了,而这个最新的版本也没有对中文的支持。
于是我们在做自动化测试,使用ReportNG生成测试报告时,官方的jar包便变得很鸡肋,用也不是,不用也不是。于是笔者想到为什么不使用自定义的jar包来实现对中文和图表的功能支持呢?所以就有了这篇文章。
注:这种方法适用于自动化测试,也可用于其他的需要引用自定义jar包的场合。
二、下载reportng-1.1.5.jar包
首先可以下载这个改良后的jar包,我为它命名为reportng-1.1.5.jar,它拥有对图表和中文的双重支持。其中引用的用于生成图表的js文件是放在我自己的一台服务器上,如果某一天服务器挂了,功能不可用了请及时和我说一声我及时修复,谢谢!
下载链接:https://github.com/TestCorn/Typora-Images/blob/master/reportng/reportng-1.1.5.jar
接下来我们来讲一下如何在Maven中使用这个自定义jar包。
三、将jar包放入Maven工程
在src/main/resources目录下创建一个文件夹,名为libs,用于存放我们的自定义jar包们。
然后将下载好的reportng-1.1.5.jar复制粘贴进去,如下图:
四、修改pom.xml文件
最后一步,我们需要修改pom.xml文件,让项目找到这个自定义jar包,代码如下:
<!-- 使用自定义的reportng-1.1.5.jar包,并关联testNg。 -->
<dependency>
<groupId>reportng-1.1.5</groupId>
<artifactId>reportng-1.1.5</artifactId>
<version>1</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/resources/libs/reportng-1.1.5.jar</systemPath>
<!-- 关联testNg,如果使用了testng,请注意一定不要忘记添加这段标签,同时去掉testng的<scope>test</scope>标签,否则运行时会报“找不到org.testng”的错误 -->
<exclusions>
<exclusion>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
</exclusion>
</exclusions>
</dependency>
解析:上面的groupId、artifactId和version都可以随便填写,只要systemPath正确即可。
${basedir}/src/main/resources/libs/reportng-1.1.5.jar
五、修改TestNG.xml
最后我们还需要配置一下使用reportng生成的测试报告来替代原有的测试结果报告,打开testng.xml,在suite标签中添加如下代码,修改监听器:
<listeners>
<listener class-name="org.uncommons.reportng.HTMLReporter" />
<listener
class-name="org.uncommons.reportng.JUnitXMLReporter" />
</listeners>
然后我们在Eclipse中依次点击Windows-Preferences-TestNG,按如下方式进行配置:
勾选Disable default listener,然后再Pre Defined Listeners中填入
org.uncommons.reportng.HTMLReporter
完成后点击Apply And Close即可。
撒花Over!到这里我们就完成配置啦,可以跑一下项目看看!所生成的测试报告就在项目目录下的test-output文件夹内,html目录下。外观也是非常的美丽啦:
这样子我们在将工程上传Git时,把resource文件夹一起上传,协同开发人员们拉取并打开你的代码后,就可以自动加载这个jar包啦~
六、结尾
如果想知道这个jar包要怎么进行自定义,可以参考我的这篇文章:
Selenium+Java(10):教你修改jar包,实现测试报告的图表定制及优化
以上便是在Maven项目中引用自定义的reportng.jar包的方法。
当然这种方式也适用于各类需要引用自定义jar包的场景。
需要注意的点是,如果你引用了多个jar包,那么groupId、artifactId和version可以随便填写,但不能重复。
软件测试工程师一只,也在不断的学习阶段,平时的小经验不定期分享。
博主经验有限,若有不足,欢迎交流,共同改进~
有意可加Q群 908417285 交流学习。
乾坤未定,你我皆是黑马