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-8OutputStream 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