百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

小白必看!用JMeter+ANT进行接口自动化测试,并生成HTML测试报告

myzbx 2025-01-05 19:01 25 浏览

每天进步一点点,关注我们哦,每天分享测试技术文章

本文章出自【码同学软件测试】

码同学公众号:自动化软件测试

码同学抖音号:小码哥聊软件测试

小伙伴们,用python做接口自动化是不是写代码比较繁琐,而且没有python代码基础的小伙伴根本无从下手对吧!今天我们来学习一下如何使用JMeter工具实现接口自动化测试



01

安装



1、安装JDK,配置java环境变量(安装过程略)

2、安装Jmeter(安装过程略)

3、安装ANT

  • 下载安装

下载地址:http://ant.apache.org/bindownload.cgi

① 下载后解压到指定位置即可,比如:F:\apache-Ant

② 将jmeter所在的目录下extras子目录里的ant-jmeter-1.1.1.jar复制到ant所在目录lib子目录之下,这样ant运行时才能找到”

org.programmerplanet.ant.taskdefs.jmeter.JMeterTask”这个类,从而成功触发JMeter脚本。

  • 配置环境变量

添加环境变量(以windows为例)

ANT_HOME F:\apache-Ant

CLASSPATH %ANT_HOME%\lib

Path %ANT_HOME%\bin

  • 验证安装结果,命令行输入ant -version,出现版本信息则安装成功



02

ANT与JMeter



配置ANT与Jmeter的配置文件

1、配置ANT配置ant编译文件build.xml

拷贝下面的内容与新建的txt文件中,并将此文件改名为:build.xml

<?xml 
version
="
1.0
" 
encoding
="
utf
-8
"?>
<
project 
name
="
pc
" 
default
="
all
" 
basedir
="
F:\apache-jmeter-5.0\jmeterAutoTest
">
    <
tstamp
>
        <
format 
property
="
time
" 
pattern
="
yyyyMMddhhmm
" />
    </
tstamp
><
property 
name
="
jmeter
.home
" 
value
="
F:\apache-jmeter-5.0
" /><
property 
name
="
jmeter.result.jtl.dir
" 
value
="
F:\apache-jmeter-5.0\jmeterAutoTest\pc\resultlog\jtl
" /><
property 
name
="
jmeter.result.html.dir
" 
value
="
F:\apache-jmeter-5.0\jmeterAutoTest\pc\resultlog\html
" /><
property 
name
="
ReportName
" 
value
="
TestReport
" /><
property 
name
="
jmeter.result.htmlName
" 
value
="
${jmeter.result.html.dir}/${ReportName}${time}.html
" /><
property 
name
="
jmeter.result.jtlName
" 
value
="
${jmeter.result.jtl.dir}/${test}${time}.jtl
" /><
property 
name
="
mail_from
" 
value
="
xx@163.com
" /><
property 
name
="
mail_to
" 
value
="
xx
@qq.com
" />
    

    <
target 
name
="
all
">
        <
antcall 
target
="
test
" />
        <
antcall 
target
="
report
" />
        <
antcall 
target
="
send
" />
    </
target
>
    <
target 
name
="
test
">
        <
taskdef 
name
="
jmeter
" 
classname
="
org.programmerplanet.ant.taskdefs.jmeter.JMeterTask
" />
        <
jmeter 
jmeterhome
="
${jmeter.home}
" 
resultlog
="
${jmeter.result.jtlName}
">
            
            <
testplans 
dir
="
F:\apache-jmeter-5.0\jmeterAutoTest\pc\script
" />
        </
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
">
        <
xslt 
classpathref
="
xslt
.c
lasspath
"
        
force
="
true
"
        
in
="
${jmeter.result.jtlName}
" 
        
out
="
${jmeter.result.htmlName}
" 
        
style
="
${
jmeter.home}/extras/jmeter-results-detail-report_21.xsl
">
            <
param 
name
="
dateReport
" 
expression
="${
time
}"/>
    </
xslt
>
        
        <
copy 
todir
="
${
jmeter.result.html.dir
}">
            <
fileset 
dir
="
${
jmeter.home}/extras
">
                <
include 
name
="
collapse.png
" />
                <
include 
name="expand.png" />
            </
fileset
>
        </
copy
>
    </
target
></
project
>

2、改build.xml文件,按照实际的文件路径配置好

3、配置jmeter.properties

免费领取 码同学软件测试 课程笔记+超多学习资料+完整视频+最新面试题,可以转发文章 + 私信「码同学666」获取资料哦

配置jmeter报告输出格式为xml,在jmeter/bin目录下jmeter.properties文件中修改jmeter.save.saveservice.output_format=csvjmeter.save.saveservice.output_format=xml并去掉前面的注释符号#


4、准备测试脚本数据

新建文件夹pc,pc文件夹分别新建buildfileresultlogscript 三个文件夹,buildfile文件夹放入build.xml文件,resultlog里分别新建html,jtl文件夹。


注:Resultlog

Html文件夹装的是ant 转化后的结果

Jtl文件装的是meter生成的结果

Script:Jmeter执行的脚本



03

测试报告



打开命令行进行build.xml文件所在的目录,输入ant即可生成报告,报告存放在html文件夹里

生成的测试报告如下:

测试报告优化

用jmeter自带的测试报告得到的测试报告信息并不是很全,这里参考网上的方法,做一个优化


1、下载优化模板jmeter-results-shanhe-me.xsl,拷贝到jmeter的extras目录中,如C:\apache-jmeter-2.12\extras


2、设置测试输出报告要输出的内容,同样在jmeter.properties中,设置需要输出的内容为true,并去掉前面的注释符号#,这里全部设置成true


修改前:

修改后:


3、设置build文件的报告模板为优化后的模板jmeter-results-shanhe-me.xsl


4、按前面的方式再次用ant构建测试,查看优化后的测试报告

免费领取码同学软件测试课程笔记+超多学习资料+学习完整视频,可以关注我们公众号哦:自动化软件测试

本文著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

相关推荐

首次被击毁!低调但先进的S-350,为何活得比韩国仿版差这么多?

【军武次位面】作者:乐乐2月18日,乌克兰军方网站发布了其前线炮兵侦察旅,在顿涅茨克地区攻击俄军S-350防空系统的现场视频。这也是这款地位独特的先进防空系统,第一次确认在战场上被摧毁——考虑到近三年...

Windows 10 LTSC 2021 vs 2019:哪个更适合你?

本内容来源于@什么值得买APP,观点仅代表作者本人|作者:闪电神龙微软近日发布了2024年11月份ISO镜像,包括Windows1124H2、Windows1022H2以及Server2025...

叛变投敌?俄军最先进隐身无人机S-70,在乌东上空被苏-57击落!

【军武次位面】作者:天狼2024年10月5日,乌克兰东部战区传来一条令人震惊的消息:一架俄罗斯最先进的隐身无人机S-70“猎人-B”在乌东上空被击落,令人意外的是,击落它的竟然是俄罗斯自己的战斗机。这...

自动驾驶车祸致1死1伤!特斯拉被判赔偿2.43亿美元

当地时间8月1日,美国佛罗里达州一个陪审团裁定,美国电动汽车制造商特斯拉应为2019年一辆配备自动驾驶系统的ModelS所致的致命车祸承担部分责任,并判令该公司向一名遇难女性的家属及一名伤者支付约2...

HP488DZ 无绳电锤钻(18V)牧田DTD156SFJ

HP488DZ无绳电锤钻(18V)牧田DTD156SFJHP488DZ无绳电锤钻(18V)HP488DZ特征HP488D是一款基于HP457D开发的无绳电锤,采用18V锂离子电池供电。其...

FJK-SJRFPZS防爆阀位行程开关级

解答常见误区在工业自动化和安全控制领域,FJK-SJRFPZS防爆阀位行程开关等级是一个关乎设备安全与运行效率的重要参数。许多用户在选择和应用这类开关时,可能对其等级分类存在一些误解。本文将通过通俗易...

China&#39;s PLA aerobatic team to perform in Thailand for 50th anniversary of bilateral diplomatic ties

TIANJIN,March2(Xinhua)--TheBayiAerobaticTeamoftheChinesePeople'sLiberationArmy(PLA)A...

JD.com Enters Travel and Hospitality With Supply Chain-Focused Strategy

TMTPOST--JD.comhasofficiallythrownitshatintoChina’sfiercelycompetitivetravelandhospita...

JD.com Drives Robotics Funding Frenzy With Investments in LimX Dynamics, Spirit AI, and EngineAI

TMTPOST--JD.comisdoublingdownonembodiedintelligence,catalyzinganewwaveoffundinginChi...

JD.com opens first JD Mall in Beijing, steps up offline retail push

bySongJiananJD.comhaslauncheditsfirstJDMALLinBeijing,expandingitsofflineretailfootpr...

JD.com&#39;s food delivery fleet tops 120,000 full-time riders

JD.com'sfull-timefooddeliveryfleethassurpassed120,000ridersandisexpectedtoexceed150,00...

China willing to share military equipment achievements with friendly countries: defense ministry

BEIJING,July8(Xinhua)--Chinahasalwaystakenaprudent,responsibleapproachtomilitaryexpor...

FJK-SJRFPZS防爆阀位行程开关等级

解答常见误区在工业自动化和安全控制领域,FJK-SJRFPZS防爆阀位行程开关等级是一个关乎设备安全与运行效率的重要参数。许多用户在选择和应用这类开关时,可能对其等级分类存在一些误解。本文将通过通俗易...

JD&#39;s 618 Festival Smashes Records as AI Powers Next-Gen Retail Engine

AsianFin–JD.com’s2025“618ShoppingFestival”wrappedupwithrecord-breakingmomentum,drivenby...

JD’s Food Delivery Blitz Shakes Meituan as Founder Wang Xing Vows to Win at All Costs

Credit:CFPAsianFin--JD.comInc.isturninguptheheatinChina'sfooddeliverywars,andfounder...