jmeter+ant生成xml报告
1.jdk安装
2.jmter安装
3.ant安装
下载apache-ant-1.10.6-bin.zip,直接解压就可使用,和jmeter类似
ant环境变量配置
- 新建系统变量:ANT_HOME,变量值为Ant的本地安装路径,如:ANT_HOME=D:\software\apache-ant-1.10.6
- Path=%ANT_HOME%\bin
- CLASSPATH=%ANT_HOME%\lib
- 打开命令行,输入ant -v命令,或者ant -version命令,打印ant版本号表示配置成功

4.使用ant构建运行Jmeter,生成jtl、html格式报告
- 修改jmeter.properties文件,jmeter.save.saveservice.output_format=xml,去掉前面的注释符
- 拷贝apache-jmeter-3.3\extras\ant-jmeter-1.1.1.jar到apache-ant-1.10.6\lib目录下
- cmd命令进入apache-jmeter-3.3\extras目录,运行"ant.bat -file build.xml -Dtest=Test" ,查看\apache-jmeter-3.3\extras目录下是否出现Test.jtl、Test.html文件,若有,则构建成功
- 打开html格式文件,查看jmx脚本的测试报告,模板为jmter原生模板,下面自定义模板


5.修改build.xml文件
<?xml version="1.0" encoding="UTF-8"?>
<!-- build.xml编码格式为utf-8格式-->
<project name="ant-jmeter-test" default="run" basedir=".">
<tstamp>
<!-- 设置日期时间格式-->
<format property="datetime" pattern="yyyyMMddhhmm" />
</tstamp>
<!-- 引用命令"ant.bat -file build.xml -Dtest=Test"中的test属性名称,如:${test}即属性值为Test,优先引用 -->
<!-- 本地存放report的路径,即html格式和jtl格式的结果报告-->
<property name="reportdir" value="F:\data\jmeter\report" />
<!-- jmeter中script路径 -->
<property name="scriptdir" value="F:\data\jmeter\scripts" />
<!-- 本地 jmeter 目录-->
<property name="jmeter.home" value="C:\software\apache-jmeter-4.0" />
<!-- 报告标题-->
<property name="report.title" value="接口测试"/>
<!--如果名称name为命令ant.bat -file build.xml -Dtest=Test中的test属性名称,则优先引用test属性值即Test,不会再引用value值-->
<property name="test" value="ReportName"/>
<!-- 生成报告名称引用当前设置的值-->
<property name="ReportName" value="TestReport" />
<!-- 报告名称加入当前时间${datetime},如:${reportdir}/${ReportName}${datetime}.html-->
<property name="jmeter.result.jtlName" value="${reportdir}/${ReportName}.jtl" />
<property name="jmeter.result.htmlName" value="${reportdir}/${ReportName}.html" />
<!-- 报告的输出格式"xml"-->
<property name="jmeter.save.saveservice.output_format" value="xml"/>
<!-- 引用jar路径-->
<path id="xslt.classpath">
<fileset dir="${jmeter.home}/lib" includes="xalan*.jar"/>
<fileset dir="${jmeter.home}/lib" includes="serializer*.jar"/>
</path>
<!-- 运行了两个标签中的内容-->
<target name="run">
<!--测试脚本标签对应下面的jMeter脚本-->
<antcall target="test" />
<!--测试脚本标签对应下面的jMeter脚本后产生测试报告的-->
<antcall target="report" />
</target>
<!--JMeter脚本执行,name属性值和上面name中标签下的<antcall target="test" /> target值对应-->
<target name="test">
<taskdef name="jmeter" classname="org.programmerplanet.ant.taskdefs.jmeter.JMeterTask" />
<!-- 命令运行jmeter后,会生成jtl文件,html文件通过获取jtl文件内容展示报告-->
<jmeter jmeterhome="${jmeter.home}" resultlog="${jmeter.result.jtlName}">
<!-- 声明要运行的脚本,可以是一个脚本或者全部脚本,"*.jmx"指包含此目录下的所有jmeter脚本-->
<testplans dir="${scriptdir}" includes="${test}.jmx" />
</jmeter>
</target>
<!--JMeter脚本执行,name属性值和上面name中标签下的<antcall target="report" /> target值对应-->
<target name="report">
<tstamp>
<!-- 设置测试报告的日期时间格式,大写HH-24小时,小写hh-12小时-->
<format property="report.datetime" pattern="yyyy/MM/dd HH:mm" />
</tstamp>
<!-- 将jtl格式转换成html格式报告,及导入样式模板style-->
<xslt classpathref="xslt.classpath"
force="true"
in="${jmeter.result.jtlName}"
out="${jmeter.result.htmlName}"
style="${reportdir}/jmeter.results.shanhe.me.xsl">
<param name="titleReport" expression="${report.title}"/>
<!-- param参数是引用style文件中的样式参数-->
<param name="dateReport" expression="${report.datetime}"/>
</xslt>
<copy todir="${reportdir}">
<fileset dir="${jmeter.home}/extras">
<include name="collapse.png" />
<include name="expand.png" />
</fileset>
</copy>
</target>
</project>
6.配置测试报告样式
下载合适的style样式模板
build.xml对应style文件修改
修改jmeter.properties

7.自定义测试报告
在本地创建一个存放report和script的目录:如:F:\data\jmeter\report,F:\data\jmeter\script
把build.xml文件和样式模板文件style都放入该目录下
cmd命令进入report目录后,执行ant.bat -file build.xml -Dtest=脚本文件名(不需要后缀),report目录自动生成jtl和html文件,ant -h查看命令的使用
jmeter+ant生成xml报告的更多相关文章
- Jmeter+Ant生成结果报告时,MinTime、MaxTime显示NaN的问题
将apache-jmeter-2.13\lib中的serializer-2.7.2.jar.xalan-2.7.2.jar复制到apache-ant-1.9.6\lib中即可: 复制前生成:
- jmeter+ant+jenkins+mac 报告优化(三) 使用命令行执行jmeter方式生成多维度的图形化HTML报告
1.在构建中填写如下命令: 2.start.sh文件的内容 cd /Applications/apache-jmeter-3.0/bin/ CURTIME=`date +%Y%m%d%H%M` ./j ...
- jmeter+ant+jenkins+mac报告优化
一.在上篇博客中生成的报告有两个问题: 1.date not defined 2.Min Time和Max Time显示成了NaN 二.Jmeter+Ant报告生成原理: 在解决问题之前,让我们先弄清 ...
- jmeter+ant+jenkins+mac报告优化(一):解决Min Time和Max Time显示NaN
一.在上篇博客中生成的报告有两个问题: 1.date not defined 2.Min Time和Max Time显示成了NaN 二.Jmeter+Ant报告生成原理: 1.在Jmeter的extr ...
- Jenkins+Jmeter+Ant 生成测试报告
<?xml version="1.0" encoding="UTF-8"?> <project name="wms_test&quo ...
- jmeter自动生成测绘报告并发送邮件
步骤: 1.安装ant,添加到环境变量(windows是将bin目录添加到path.cmd命令输入 ant -v 查看版本号) (mac:brew install ant ant –version) ...
- Jmeter Ant Task如果报告中有错误,在邮件内容里面直接显示出来 系列2
由于部门有多个项目,将自动化测试框架运用于多个项目时,希望针对每个项目修改的东西越少越好,为此,做如下修改: D:\apache-jmeter-2.7\extras\jmeter-results-de ...
- DotNetCore跨平台~xUnit生成xml报告
在CI/CD流行至极的今天,你的项目没有自动化测试绝对是不可以接受的,在进行自动化部署和持续集成时,我们的dotnet core项目也是可以实现自动化的,之前说过gitlab,jenkins对持续集成 ...
- checkstyle+ant生成checkstyle报告
<?xml version="1.0" encoding="UTF-8" ?> <project name="tibim" ...
随机推荐
- 个人永久性免费-Excel催化剂功能第69波-打造最专业易用的商务图表库,即点即用的高级Excel图表
Excel很大一块细分领域是图表,数据分析的末端,数据展示环节,精美恰当的图表,能够为数据分析数据结论带来画龙点睛的一笔.Excel催化剂简单内置了图表库,利用已经做好的模板式的图表示例,可快速复制使 ...
- Minikube安装成功Kubernetes,一次过!
介绍 Minikube 是 K8S 官方为了开发者能在个人电脑上运行 K8S 而提供的一套工具.实现上是通过 Go 语言编写,通过调用虚拟化管理程序,创建出一个运行在虚拟机内的单节点集群. 注:从这里 ...
- Flink实战(七) - Time & Windows编程
0 相关源码 掌握Flink中三种常用的Time处理方式,掌握Flink中滚动窗口以及滑动窗口的使用,了解Flink中的watermark. Flink 在流处理工程中支持不同的时间概念. 1 处理时 ...
- Vue的基本使用(三)
1.过滤器 1.局部过滤器,在当前组件内部使用过滤器,给某些数据添油加醋. //声明 filters:{ "过滤器的名字":function(val,a,b){ //a就是alex ...
- C# Socket服务器端如何判断客户端断开求解
Socket client //假如已经创建好了,连接到服务器端得Socket的客户端对象. 我们只要client.Poll(10,SelectMode.SelectRead)判断就行了.只要返回Tr ...
- .gitignore文件我自己常用的配置
我项目中一般不需要上传到git服务器上的有 .idea ------.idea目录 .mvn ------.mvn目录 .iml mvnw mvnw.cmd logs/ --- 我生成的日志文件目录 ...
- 將Python打包成 exe可执行文件
利用Python寫了一個小腳本想要傳給使用Windows但沒有裝Python的朋友執行,這時候就可以利用將檔案包裝成exe檔案,讓沒有Python的朋友也可以執行.本篇將介紹利用套件「PyInstal ...
- Java IO 为什么我们需要缓冲区
在执行IO操作我们通常会设置一个字节数组作为缓冲区用来写/读数据,一般情况下一个合理大小的缓冲区是有利于提升性能的,但是有一个问题一直困扰着我,为什么缓冲区可以提升IO操作的性能? 经查阅资料之后,总 ...
- 灵活使用Maven Profile
项目中一直应用Maven的profile特性解决不同环境的部署问题.最近在尝试解决本地调试环境的时候碰到一些问题,顺便仔细研究了一下.因为项目仍然在用普通SpringMVC架构,没有切换到Spring ...
- 【iOS】手动抛出异常
之前没遇到过需要手动抛出异常的时候,这次见到了,记录一下.示例代码如下: /** 如果调用 [[BNRItemStore alloc] init],就提示应该使用 [BNRItemStore shar ...