写自动化测试时,一个很重要的任务就是生成漂亮的测试报告。

1.用junit或testNg时,可以用ant辅助生成html格式:

<target name="report" depends="run">

<junitreport todir="${report.dir}">

<fileset dir="${report.dir}">

<include name="TEST-*.xml" />

</fileset>

<report format="noframes" todir="${report.dir}" />

</junitreport>

<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文件

以上只是一个简单的例子,实际运用过程中还是要复杂很多

总结:几种生成html格式测试报告的方法的更多相关文章

  1. 【转载】总结:几种生成HTML格式测试报告的方法

    总结:几种生成HTML格式测试报告的方法 写自动化测试时,一个很重要的任务就是生成漂亮的测试报告. 1.用junit或testNg时,可以用ant辅助生成html格式: <target name ...

  2. 使用jmeter+ant进行接口自动化测试(数据驱动)之二:利用apache-ant执行测试用例并生成HTML格式测试报告

    在 使用jmeter+ant进行接口自动化测试(数据驱动)之一 介绍了如何使用csv文件来批量管理接口 本次接着介绍如何利用apache-ant执行测试用例并生成HTML格式测试报告 ①下载安装 ap ...

  3. Jmeter生成html格式测试报告

    使用jmeter进行性能测试,运行完毕后生成html格式的测试报告,需要进行如下操作: 1.在C:\apache-jmeter-3.0\bin文件夹下的user.properties文本中添加如下信息 ...

  4. 用插件maven-surefire-report-plugin生成html格式测试报告

    在默认情况下,执行maven test/maven package/maven install命令时会在target/surefire-reports目录下生成txt和xml格式的输出信息. 其实ma ...

  5. eclipse 自动生成json格式的toString()方法

    文本代码 {"${member.name()}":"${member.value}", "${otherMembers}"}

  6. jmeter(二十六)生成HTML性能测试报告

    性能测试工具Jmeter由于其体积小.使用方便.学习成本低等原因,在现在的性能测试过程中,使用率越来越高,但其本身也有一定的缺点,比如提供的测试结果可视化做的很一般. 不过从3.0版本开始,jmete ...

  7. jmeter生成html格式接口自动化测试报告

    jmeter生成html格式接口自动化测试报告 jmeter自带执行结果查看的插件,但是需要在jmeter工具中才能查看,如果要向领导提交测试结果,不够方便直观. 笔者刚做了这方面的尝试,总结出来分享 ...

  8. 如何使用Postman生成不同格式测试的报告

    Postman还可以生成测试报告,还是多种格式报告? Postman团队开源Newman作为Postman运营工具,该开源库使用命令行方式执行Postman 脚本,并且生成多种格式报告,还支持Post ...

  9. pytest.11.生成xml格式的测试报告

    From: http://www.testclass.net/pytest/report/ pytest有非常友好的命令行报告输出,在做用例开发的时候,这是极好的.然而我们在运行用例后经常会需要将测试 ...

随机推荐

  1. SQL语句中使用回车换行符

    今天发现sql数据库有个图片路径中包含空格,结果在替换和查找时,发现用空格无效,后来经过确认才发现原来是回车换行符引起,从表面看很像空格,实际是回车符,要用char(13)才能进行替换和查找 --查找 ...

  2. Centos.安装Goaccess1.2

    下载 wget http://tar.goaccess.io/goaccess-1.2.tar.gz 解压 tar -xzvf goaccess-1.2.tar.gz 安装支持库GeoIP-devel ...

  3. BizTalk增强型RosettaNet跟踪报告

      BizTalk 的数据报表能力一直是比较弱的,好在Rosettanet 支持使用BAM 跟踪功能来跟踪各PIP消息状态.增强的跟踪功能能跟踪流程为消息.错误和事件.不可否认性的数据.可以根据跟踪的 ...

  4. SWIG 3 中文手册——6. SWIG 和 C++

    目录 6 SWIG 和 C++ 6.1 关于包装 C++ 6.2 方法 6.3 支持的 C++ 功能 6.4 命令行选项与编译 6.5.1 代理类的构造 6.5.2 代理类中的资源管理 6.5.3 语 ...

  5. 安卓 apk 嵌入H5页面只显示部分

    安卓 apk 嵌入H5页面只显示部分(有空白页出现) 解决方案 没有加载的是js部分,需要在安卓那边加上一串代码 webView.getSetting().setDomStorageEnabled(t ...

  6. [转帖]mDNS原理的简单理解

    mDNS原理的简单理解 https://binkery.com/archives/318.html 发现还有avahi-daemon mdns 设置ip地址 等等事项 网络部分 自己学习的还是不够多 ...

  7. 全链路追踪技术选型:pinpoint vs skywalking

    目前分布式链路追踪系统基本都是根据谷歌的<Dapper大规模分布式系统的跟踪系统>这篇论文发展而来,主流的有zipkin,pinpoint,skywalking,cat,jaeger等. ...

  8. (转)MySQL中char(36)被认为是GUID导致的BUG及解决方案

    有时候在使用Toad或在程序中,偶尔会遇到如下的错误: System.FormatExceptionGUID 应包含带 4 个短划线的 32 位数(xxxxxxxx-xxxx-xxxx-xxxx-xx ...

  9. Window应急响应(六):NesMiner挖矿病毒

    0x00 前言 作为一个运维工程师,而非一个专业的病毒分析工程师,遇到了比较复杂的病毒怎么办?别怕,虽然对二进制不熟,但是依靠系统运维的经验,我们可以用自己的方式来解决它. 0x01 感染现象 1.向 ...

  10. Kafka学习笔记之Kafka背景及架构介绍

    0x00 概述 本文介绍了Kafka的创建背景,设计目标,使用消息系统的优势以及目前流行的消息系统对比.并介绍了Kafka的架构,Producer消息路由,Consumer Group以及由其实现的不 ...