Jenkins+JMeter+Ant 接口持续集成
JMeter安装
JMeter安装包:
-
下载地址:https://jmeter.apache.org/download_jmeter.cgi
-
依赖JDK环境
JDK环境配置:
-
JAVA_HOME E:\jdk1.8.0_51
-
CLASSPATH %JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar;
JMeter配置文件修改
为什么要修改配置文件
-
jmeter执行结果文件默认保存的不是xml格式,无法转化成html格式
-
jmeter执行结果文件默认有很多执行数据是不保存的,而测试报告需要这些数据
-
配置文件路径 ${jmeterhome}/bin/jmeter.properties
-
配置文件修改内容:修改jtl文件格式:去掉注释(#),修改csv为xml
如果出现如下内容,说明安装成功:
Buildfile: build.xml does not exist!
Build failed
Ant相关使用:
定制集成Ant配置文件(bulid.xml):
具体参看build.xml文件
-
<?xml version="1.0" encoding="UTF-8"?><project name="ant-jmeter-test" default="all" basedir="."><tstamp><format property="time" pattern="yyyyMMddhhmm" /></tstamp><!-- 需要改成自己本地的 Jmeter 目录 --><property name="jmeter.home" value="E:\apache-jmeter-3.2" /><!-- jmeter生成jtl格式的结果报告的路径 --><property name="jmeter.result.jtl.dir" value="C:\Users\Administrator\.jenkins\workspace\MiaomiApi\report\jtl" /><!-- jmeter生成html格式的结果报告的路径 --><property name="jmeter.result.html.dir" value="C:\Users\Administrator\.jenkins\workspace\MiaomiApi\report\html" /><!-- 生成的报告的前缀 htmlm名称与jenkins,HTML directory to archive 设置一致,否则报告会出现404--><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}/index.html" /><target name="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}"><!-- 声明要运行的脚本。"*.jmx"指包含此目录下的所有jmeter脚本--><testplans dir="E:\ApiTest\jmx" includes="*.jmx" /></jmeter></target><!-- 解决html报告中没有日期,以及NAN的问题--><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><xsltclasspathref="xslt.classpath"force="true"in="${jmeter.result.jtlName}"out="${jmeter.result.htmlName}"style="${jmeter.home}/extras/jmeter-results-detail-report_21.xsl"><!-- 解决html报告中没有日期的问题--><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>
如上标注的为路径信息,需要修改为自己的本地路径
-
style参数为生成html文件的模板文件,可以修改为自己的模板文件,jmeter提供了多个模板文件可供使用
-
将bulid.xml文件拷贝到:C:\Users\Administrator\.jenkins\workspace\工作目录\ 下
Jenkins相关插件介绍与配置:
Jenkins,之前叫做Hudson,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,包括:
1. 持续的软件版本发布/测试项目。
2. 监控外部调用执行的工作。
Jenkins部署:
-
下载地址:https://jenkins.io/index.html
-
下载war包,将jenkins.war文件放入tomcat下的webapps目录下
-
启动tomcat
-
浏览器访问:http://localhost:8080/jenkins
-
新建项目:登录jenkins--新建--输入项目名称--选择:构建一个自由风格的软件项目
Jenkins安装插件:
-
登录jenkins--系统管理--管理插件--可选插件
-
安装:Ant Plugin、HTML Publisher plugin 、Performance plugin插件
JMeter插件:Performance plugin
-
功能:用来展示jmeter执行结果
-
配置:jenkins--选择新建的项目--配置--增加构建后操作步骤--Publish Performance test result report--add a new report--选择JMeter--Report files输入: **/*.jtl
配置说明:
-
Report files:配置jtl文件路径,相对路径与绝对路径均可,图为相对路径
-
其他选项:配置失败比例显示图形等参数,按需配置
Ant插件:Ant plugin
-
功能:用来执行Ant