参考:JMeter(2) 集成jmeter+ant+jenkins - DaisyLinux - 博客园
1、安装jmeter、ant、Jenkins
配置环境变量classpath/path/xxx_home等,参考jmeter+ant+jenkins接口自动化测试框架 - 在树上唱歌w - 博客园
jdk环境变量:
JAVA_HOME 为 C:\Program Files (x86)\Java\jdk1.8.0_171 (注意:java我是默认装的C盘)
CLASSPATH为 .;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar;
PATH为 %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;
jmeter:
JMETER_HOME 为 jemter安装路径
CLASSPATH为 %JMETER_HOME%\lib
PATH为%JMETER_HOME%\bin
ANT_HOME 为 ant解压位置
CLASSPATH为 %ANT_HOME%\lib;
PATH为%ANT_HOME%\bin;
ant下载地址 http://ant.apache.org/bindownload.cgi
cmd中分别输入jmeter -version ,ant -version 返回版本号即说明安装成功。
2、解压ant时需要做以下操作
build.xml文件参考(重点):
参考:Ant 中的build.xml配置文件生成报告、发邮件完整版_染小诺的博客-CSDN博客
我写的ant编译、打包、测试、测试报告生成和邮件发送模板_甘谷天蚕网络技术有限公司-CSDN博客
<?xml version="1.0" encoding="UTF8"?>
<project name="JmeterTest" default="all" basedir="."><!-- 原default="run"需要改为"all"-->
<tstamp>
<format property="report.datestamp" pattern="yyyy/MM/dd HH:mm"/>
<format property="time" pattern="yyyyMMddhhmm" />
</tstamp>
<!--jmeter的目录-->
<property name="jmeter.home" value="D:\apache-jmeter-5.4.1\" /><!-- 需要改成自己本地的 Jmeter 目录-->
<property name="jmeter.result.jtl.dir" value="D:\apache-jmeter-5.4.1\TestCase\jtl" /><!-- jmeter生成jtl格式的结果报告的路径-->
<property name="jmeter.result.html.dir" value="D:\apache-jmeter-5.4.1\TestCase\html" /><!-- jmeter生成html格式的结果报告的路径-->
<property name="ReportName" value="test_api_report_" />
<property name="jmeter.result.jtlName" value="${jmeter.result.jtl.dir}/${ReportName}${time}.jtl" /><!-- 生成的报告的前缀-->
<property name="jmeter.result.htmlName" value="${jmeter.result.html.dir}/${ReportName}.html" />
<property name="mail_to" value="xxxx@163.com" />
<target name="all"><!-- 原name="run"需要改为"all"-->
<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}">
<testplans dir="D:\apache-jmeter-5.4.1\TestCase" includes="*.jmx" /><!-- 声明要运行的脚本。"*.jmx"指包含此目录下的所有jmeter脚本-->
<property name="jmeter.save.saveservice.output_format" value="xml"/>
</jmeter>
</target>
<path id="xslt.classpath"> <!--jar路径 -->
<fileset dir="${jmeter.home}/lib" includes="xalan-2.7.2.jar"/>
<fileset dir="${jmeter.home}/lib" includes="serializer*.jar"/>
</path>
<target name="report">
<xslt classpathref="xslt.classpath"
force="true"
in="${jmeter.result.jtlName}"
out="${jmeter.result.htmlName}"
style="${jmeter.home}/extras/jmeter-results-detail-report_21.xsl">
<param name="showData" expression="${show-data}"/>
<param name="titleReport" expression="${ReportName}${time}"/>
<param name="dateReport" expression="${report.datestamp}"/>
</xslt>
<copy todir="${jmeter.result.html.dir}">
<fileset dir="${jmeter.home}/extras">
<include name="collapse.png" />
<include name="expand.png" />
</fileset>
</copy>
</target>
</project>
发送邮件的配置,培训班视频参考:
3、输出报告
1)录制好jmeter脚本,输出jmx文件;
2)查看结果树的输出文件参考如下,这个是和build.xml中相对应的:
D:\apache-jmeter-5.4.1\TestCase\jtl\test_api_report_${__time(yyyymmddHHmm,)}.jtl
3)jmeter无GUI页面输出报告命令为:
在jmeter安装目录下的bin目录打开cmd,
jmeter -n -t testfile.jmx -l xxxxx.jtl -e -o myreport/html
(输出的jtl文件需要未存在,myreport/html需要为空目录,否则会报错。)
4)用ant执行输出报告:
在ant安装目录下的bin目录打开cmd,执行ant -buildfile build.xml
4、安装Jenkins
下载地址:Jenkins,一直下一步。安装推荐的插件即可。执行完毕验收报告即可。
这里targets可写,也可不写;写的来源于build.xml文件中的antcall中的任一项,也可全部。
定时构建执行: