寫自動化測試時,一個很重要的任務就是生成漂亮的測試報告。javascript
1.用junit或testNg時,能夠用ant輔助生成html格式:html
<target name="report" depends="run">java
<junitreport todir="${report.dir}">python
<fileset dir="${report.dir}">maven
<include name="TEST-*.xml" />工具
</fileset>post
<report format="noframes" todir="${report.dir}" />測試
</junitreport>url
<echo message="Finished running tests." />插件
</target>
具體查看個人另一篇博客:項目構建工具ant的使用
2.用maven管理測試代碼時,能夠用maven自帶的插件生成html格式的測試報告:
具體查看博客:用插件maven-surefire-report-plugin生成html格式測試報告
3.用xslt格式化xml,生成html格式文件
(1)簡要介紹XSLT:
XSLT是一種用於將XML文檔轉換任意文本的描述語言,XSLT中的T表明英語中的「轉換」(Transformation)。
Xslt使用xpath來在xml文件中定位元素
(2)準備xml文件
好比說是a.xml文件:
<?xml version="1.0"?>
<howto>
<topic>
<title>Java</title>
<url>http://www.java.com</url>
</topic>
<topic>
<title>Python</title>
<url>http://www.python.com</url>
</topic>
<topic>
<title>Javascript</title>
<url>http://www.javascript.com</url>
</topic>
<topic>
<title>VBScript</title>
<url>http://www.VBScript.com</url>
</topic>
</howto>
(3)準備xsl文件,a.xsl:
<?xml version="1.0"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:template match="/">
<html>
<head><title>Real's HowTo</title></head>
<body>
<table border="1">
<tr>
<th>Title</th>
<th>URL</th>
</tr>
<xsl:for-each select="howto/topic">
<tr>
<td><xsl:value-of select="title"/></td>
<td><xsl:value-of select="url"/></td>
</tr>
</xsl:for-each>
</table>
</body></html>
</xsl:template>
</xsl:stylesheet>
解釋:
因爲 XSL 樣式表自己也是一個 XML 文檔,所以它老是由 XML 聲明起始:<?xml version="1.0"?>
把文檔聲明爲 XSL 樣式表的根元素是 <xsl:stylesheet> 或 <xsl:transform>,如需訪問 XSLT 的元素、屬性以及特性,咱們必須在文檔頂端聲明 XSLT 命名空間。
xmlns:xsl="http://www.w3.org/1999/XSL/Transform" 指向了官方的 W3C XSLT 命名空間。若是您使用此命名空間,就必須包含屬性 version="1.0"。
<xsl:template> 元素用於構建模板,而 match="/" 屬性則把此模板與 XML 源文檔的根相聯繫
<xsl:value-of select=「howto/topic」/ > 元素用於提取某個選定節點的值,select後面是xpath用來定位xml
<xsl:for-each> 元素容許您在 XSLT 中進行循環。
(4).準備java轉換代碼
package com.qiuwy.mavenDemo.myTest;
import javax.xml.transform.*;
import javax.xml.transform.stream.StreamResult;
import javax.xml.transform.stream.StreamSource;
import java.io.*;
public class XmlToHtml {
public static void main(String[] args) {
String src="a.xml";
String dest="a.html";
String xslt="a.xsl";
File src2=new File(src);
File dest2=new File(dest);
File xslt2=new File(xslt);
Source srcSource=new StreamSource(src2);
Result destResult =new StreamResult(dest2);
Source xsltSource=new StreamSource(xslt2);
try {
TransformerFactory tFactory = TransformerFactory.newInstance();
Transformer transformer = tFactory.newTransformer(xsltSource);
transformer.transform(srcSource, destResult);
} catch (Exception e) {
e.printStackTrace();
}
}
}
(5)執行java代碼後,生成a.html文件
以上只是一個簡單的例子,實際運用過程當中仍是要複雜不少