reportng的官网介绍:http://reportng.uncommons.org/
1.下载reportNG的jar包:http://pan.baidu.com/s/1hq5znLU
2.reprotNG的源码:https://github.com/dwdyer/reportng
3.在项目中导入reportNG的jar包
Maven 库配置地址
<dependency>
<groupId>org.uncommons</groupId>
<artifactId>reportng</artifactId>
<version>1.1.4</version>
<scope>test</scope>
</dependency>
4.更改eclipse设置
5.设置完成后,运行项目,在项目test-output/html/index.html即可查看report
监听名:org.uncommons.reportng.HTMLReporter
6、配置testng的xml配置文件
贴出来,便于拷贝:
<listeners>
<listener class-name="org.uncommons.reportng.HTMLReporter" />
<listener class-name="org.uncommons.reportng.JUnitXMLReporter" />
</listeners>
7.设置reportng的编码
更改源文件的AbstractReporter.java,并替换相应jar包的class
protected void generateFile(File file, String templateName, VelocityContext context) throws Exception { //Writer writer = new BufferedWriter(new FileWriter(file)); //encoding to utf-8 OutputStream out=new FileOutputStream(file); Writer writer=new BufferedWriter(new OutputStreamWriter(out,"utf-8")); try { Velocity.mergeTemplate(classpathPrefix + templateName, ENCODING, context, writer); writer.flush(); } finally { writer.close(); } }
8.更改报告的方法排列顺序,按照方法的执行先后顺序来进行排序的
更改TestResultComparator.java,并替换相应jar包的class
public int compare(ITestResult result1, ITestResult result2) { //return result1.getName().compareTo(result2.getName()); int longresult2 = 0; if(result1.getStartMillis()<result2.getStartMillis()) { longresult2 = -1; }else { longresult2 = 1; } return longresult2; }
9.更改报告输出样式
在reportng-1.1.4.jar的reportng.properties文件中增加
oneclass.description=Description
oneclass.duration=Duration
oneclass.testdata=Data being used
oneclass.testresult=Test result
oneclass.screenshot=Screen shot
oneclass.additionalinfo=Additional Info
在reportng-1.1.4.jar的results.html.vm文件中更改
<tr>
<td colspan="1" class="group">$testClass.name</td>
<td colspan="1" class="group">$messages.getString("oneclass.duration")</td>
<td colspan="1" class="group">$messages.getString("oneclass.testresult")</td>
</tr>
10.效果图
11、通过Apache ANT构建测试,生成reportng html report
修改配置文件build.xml,ant运行即可
通知执行ant ,发现有错误,提示:无法找到org.uncommons.reportng.HTMLReporter里面的类文件,这里是因为没有把reportng的那几个jar包放到libs文件夹 中,放进去后,即可以正常执行ant
test-output文件中可以查看生成的html测试报告。
12、用jenkins执行测试构建时,jenkins中测试报告可能显示不全,这里需要改变一下jenkins的启动方式:
默认方式为:java -jar jenkins.war
改为: java -Dhudson.model.DirectoryBrowserSupport.CSP= -jar