jmeter+ant+jenkins搭建接口自动化测试环境(基于win)
1、jmeter
jmeter依赖java运行环境,所以需要提前下载jdk并配置好环境变量
官网下载(http://jmeter.apache.org/download_jmeter.cgi),我用的是3.3版本,下载完后直接解压
2、ant
作用:项目构建,通过构建工具对多个项目文件进行统一批量的编译和运行。比如,对多个jmeter脚本批量运行
Apache Ant,是一个将软件编译、测试、部署等步骤联系在一起加以自动化的一个工具,大多用于集成开发环境中
官网下载(http://ant.apache.org/bindownload.cgi),我用的1.10.1版本,下载完直接解压
这里需要配置ant的环境变量:
ANT_HOME D:\apache-ant-1.10.1
Path ;%ANT_HOME%\bin
CLASSPATH ;%ANT_HOME%\lib
验证:cmd输入ant,出现以下提示就说明ant配置成功,因为ant默认运行当前路径下的build.xml文件,以下路径下没此文件,所以提示不存在,build.xml需要我们一会创建,可以继续执行ant -version查看下版本号
3、将\apache-jmeter-3.3\extras下面的ant-jmeter-1.1.1的jar包复制到ant的lib目录下,否则编译时可能会报ant-jmeter-1.1.1.jar not found,切记
4、在jmeter的根目录下创建一个存放脚本和报告的文件夹testcases
5、在testcases目录下创建report文件夹和build.xml文件,或者从extras目录下复制build.xml文件到testcases下,编辑build.xml文件全选-删除,把下面我的配置复制上去,保存
1 <?xml version="1.0" encoding="UTF-8"?> 2 3 <project name="ant-jmeter-test" default="run" basedir="."> 4 <tstamp> 5 <format property="time" pattern="yyyyMMdd_hhmm" /> 6 </tstamp> 7 <!-- 需要改成自己本地的 Jmeter 目录--> 8 <property name="jmeter.home" value="D:\Program Files\apache-jmeter-3.3" /> 9 <!-- jmeter生成jtl格式的结果报告的路径--> 10 <property name="jmeter.result.jtl.dir" value="D:\Program Files\apache-jmeter-3.3\testcases\report\jtl" /> 11 <!-- jmeter生成html格式的结果报告的路径--> 12 <property name="jmeter.result.html.dir" value="D:\Program Files\apache-jmeter-3.3\testcases\report\html" /> 13 <!-- 生成的报告的前缀--> 14 <property name="ReportName" value="TestReport" /> 15 <property name="jmeter.result.jtlName" value="${jmeter.result.jtl.dir}/${ReportName}${time}.jtl" /> 16 <property name="jmeter.result.htmlName" value="${jmeter.result.html.dir}/${ReportName}${time}.html" /> 17 18 <target name="run"> 19 <antcall target="test" /> 20 <antcall target="report" /> 21 </target> 22 23 <target name="test"> 24 <taskdef name="jmeter" classname="org.programmerplanet.ant.taskdefs.jmeter.JMeterTask" /> 25 <jmeter jmeterhome="${jmeter.home}" resultlog="${jmeter.result.jtlName}"> 26 <!-- 声明要运行的脚本。"*.jmx"指包含此目录下的所有jmeter脚本--> 27 <testplans dir="D:\Program Files\apache-jmeter-3.3\testcases\cases" includes="*.jmx" /> 28 <property name="jmeter.save.saveservice.output_format" value="xml"/> 29 </jmeter> 30 </target> 31 32 <path id="xslt.classpath"> 33 <fileset dir="${jmeter.home}/lib" includes="xalan*.jar"/> 34 <fileset dir="${jmeter.home}/lib" includes="serializer*.jar"/> 35 </path> 36 37 <target name="report"> 38 <tstamp><format property="report.datestamp" pattern="yyyy/MM/dd HH:mm"/></tstamp> 39 <xslt 40 classpathref="xslt.classpath" 41 force="true" 42 in="${jmeter.result.jtlName}" 43 out="${jmeter.result.htmlName}" 44 style="${jmeter.home}/extras/jmeter-results-detail-report_21.xsl"> 45 <param name="dateReport" expression="${report.datestamp}"/> 46 </xslt> 47 <!-- 因为上面生成报告的时候,不会将相关的图片也一起拷贝至目标目录,所以,需要手动拷贝 --> 48 <copy todir="${jmeter.result.html.dir}"> 49 <fileset dir="${jmeter.home}/extras"> 50 <include name="collapse.png" /> 51 <include name="expand.png" /> 52 </fileset> 53 </copy> 54 </target> 55 </project>
以上注释很全,有一些地方需要根据你的目录情况自行更改一下,比如jmeter的目录,生成jtl和html的路径和下面的html样式
6、用jmeter新建一个.jmx的脚本放到build.xml的目录,在当前地址栏输入cmd--ant,以下则说明构建成功,同时在report目录下会生成html和jtl文件,可以用浏览器打开html的文件
ps:报告样式可以在extras目录下自行选择xsl格式的文件复制到build.xml中即可
7、jenkins
下载tomcat(https://tomcat.apache.org/download-80.cgi)
官网下载(https://jenkins.io/download/),jenkins.war格式的文件,①在当前目录java -jar jenkins.war②或将其放在tomcat解压目录下的webapps下面,进入tomcat\bin下双击startup.bat启动tomcat
浏览器输入http://localhost:8080/jenkins,tomcat默认端口是8080,如果被占用可以在配置文件自行更改端口号,如果第一次配置jenkins安装默认推荐的插件即可
8、新建自由风格的项目
选择第一个自由风格,然后点击OK按钮
配置ant,增加build路径
点击保存之后,继续配置测试报告
如果没有安装推荐的插件在这里需要下载一个插件Public HTML reports
系统管理----》管理插件----》可选插件 输入Public HTML reports 进行查询并进行安装
接下来继续配置报告
点击增加构建后操作步骤 并点击Public HTML reports
并点击保存按钮 好了 现在我们报告也配置好了
现在进行jenkins构建下吧
好了到了这一步 已经构建成功了,Success !
我们在jenkins下面看下报告