Jmeter接口自动化生成测试报告html格式

jmeter自带执行结果查看的插件,但是需要在jmeter工具中才能查看,如果要向领导提交测试结果,不够方便直观。

笔者刚做了这方面的尝试,总结出来分享给大家。

这里需要用到ant来执行测试用例并生成HTML格式测试报告。

一、ant下载安装

1.1、下载地址:

http://ant.apache.org/bindownload.cgi

1.2、版本对应关系

1.10.2 .zip archive 对应jdk8

1.9.10 .zip archive 对应jdk7

1.3、下载以后直接解压压缩包,并配置环境变量

ANT_HOME C:\mySoftware\ant1.9 ----为ant的解压目录

JAVA_HOME C:\mySoftware\jdk\1.7.0_64 ----为jdk的安装目录

path %ANT_HOME%/bin

1.4、检查ant是否安装成功

在cmd窗口执行:ant -v ,如果执行结果如下,就说明安装成功

二、配置ant 和 jmeter

2.1、将jmeter中extras目录下的ant-jmeter-1.1.1.jar 文件copy到ant安装目录下的lib文件夹中

2.2、配置编译文件build.xml文件;在任意目录下创建case执行目录,以及报告的生成目录,我这边依据个人习惯,在jmeter/bin目录下创建执行目录:case_run,并在此目录下创建执行报告存放目录:report,见下图;

在执行目录下创建编译文件:build.xml

2.3、编辑build.xml内容

复制代码
<?xml version="1.0" encoding="UTF-8"?>
<project name="ant-jmeter-test" default="run" basedir=".">
<tstamp>
<format property="time" pattern="yyyyMMddhhmm" />
</tstamp>
<!-- 需要改成自己本地的 Jmeter 目录-->
<property name="jmeter.home" value="E:\tools\apache-jmeter-4.0" />
<!-- jmeter生成jtl格式的结果报告的路径-->
<property name="jmeter.result.jtl.dir" value="E:\tools\apache-jmeter-4.0\bin\commonservice\report" />
<!-- jmeter生成html格式的结果报告的路径-->
<property name="jmeter.result.html.dir" value="E:\tools\apache-jmeter-4.0\bin\commonservice\report" />
<!-- 生成的报告的前缀-->
<property name="ReportName" value="TestReport" />
<property name="jmeter.result.jtlName" value="${jmeter.result.jtl.dir}/${ReportName}${time}.jtl" />
<property name="jmeter.result.htmlName" value="${jmeter.result.html.dir}/${ReportName}${time}.html" />
<target name="run">
<antcall target="test" />
<antcall target="report" />
</target>
<target name="test">
<taskdef name="jmeter" classname="org.programmerplanet.ant.taskdefs.jmeter.JMeterTask" />
<jmeter jmeterhome="${jmeter.home}" resultlog="${jmeter.result.jtlName}">
<!-- 声明要运行的脚本。"*.jmx"指包含此目录下的所有jmeter脚本-->
<testplans dir="E:\case-report" includes="接口自动化--2.0-工作台-wxx.jmx" />

<property name="jmeter.save.saveservice.output_format" value="xml"/>
</jmeter>
</target>

<path id="xslt.classpath">
<fileset dir="${jmeter.home}/lib" includes="xalan*.jar"/>
<fileset dir="${jmeter.home}/lib" includes="serializer*.jar"/>
</path>

<target name="report">
<tstamp> <format property="report.datestamp" pattern="yyyy/MM/dd HH:mm" /></tstamp>
<xslt
classpathref="xslt.classpath"
force="true"

in="${jmeter.result.jtlName}"
out="${jmeter.result.htmlName}"
style="${jmeter.home}/extras/jmeter.results.shanhe.me.xsl" />

<!-- 因为上面生成报告的时候,不会将相关的图片也一起拷贝至目标目录,所以,需要手动拷贝 -->
<copy todir="${jmeter.result.html.dir}">
<fileset dir="${jmeter.home}/extras">
<include name="collapse.png" />
<include name="expand.png" />
</fileset>
</copy>
</target>
</project>

2.4、模板文件:jmeter.results.shanhe.me.xsl的下载链接

链接:https://pan.baidu.com/s/1lTdS7tccNWyy1D1kmHgEng

提取码:d6kx

下载以后,解压到jmeter/extras目录下,并配置build.xml文件

2.5、配置jmeter.properties文件,位置在jmeter/bin目录,将配置项jmeter.save.saveservice.output_format前面的注释去掉,值改为 xml,见下图

2.6、将要执行的脚本以及脚本所需的csv文件等,放到build.xml文件同一目录下

2.7、在命令行进入执行目录,并执行命令: ant run

2.8、 执行以后的模板内容:

2.9、如果觉得报告输出内容太少了,可以配置jmeter.properties文件,位置在jmeter/bin目录,将jmeter.save.saveservice开头的配置项中,需要打印的配置项改成true,并去掉前面的"#"

2.10、如果一次要执行多个文件,则修改build.xml,并将要执行的文件放到执行目录下

2023最新Jmeter接口测试从入门到精通(全套项目实战教程)

相关推荐
wzl2026121319 分钟前
从0到1搭建私域数据中台——公域引流的数据采集与分析
python·自动化·企业微信
木心术11 小时前
OpenClaw数据库自动化部署与网站接口调通全流程指南
运维·数据库·自动化
AC赳赳老秦3 小时前
自媒体博主:OpenClaw多Agent协同,实现选题-创作-审核全流程自动化
运维·服务器·开发语言·人工智能·自动化·媒体·openclaw
emfuture3 小时前
技术实践 | 生成式编程在中嵌科技工业控制系统开发中的审慎落地:效率提升40%的路径与方法
科技·自动化·智能制造·工业互联网
chehaoman3 小时前
Gemini 3.1技术拆解:三层思考架构与多模态自动化实战
运维·人工智能·自动化
zandy10114 小时前
指标管理的AI自治之路:衡石平台如何实现异常检测、血缘分析与智能推荐的自动化治理
运维·人工智能·自动化
apcipot_rain4 小时前
HTML知识概述
前端·javascript·html
chimooing4 小时前
【AI 自动化测试新范式】基于 OpenClaw 的智能 UI 自动化全景解析与实战
人工智能·ui·自动化
ComPDFKit4 小时前
OpenClaw 集成 ComPDF Skills:为 AI 代理赋予企业级 PDF 处理能力
自动化