jmeter+ant+jenkins接口自动化环境搭建
一、准备
1.安装jdk ---》点击查看安装教程
2.安装jmeter ,官网下载jmeter解压,配置jmeter环境:
JMETER_HOME (解压jdk路径)
Path (;%JMETER_HOME%\bin;)
CLASSPATH (; %JMETER_HOME%\lib\ext\ApacheJMeter_core.jar;%JMETER_HOME%\lib\jorphan.jar)
检验是否安装成功:
在cmd中输入命令jmeter -v ,出现如下图,表示安装成功
使用:打开 F:\apache-jmeter-4.0\bin目录下的 jmeter.bat (windows是jmeter.bat, mac是jmeter),打开如下
编写接口测试脚本:点我查看!点我查看!点我查看!
3.安装ant ,下载解压ant,配置ant环境变量:
ANT_HOME D:\ant\apache-ant-1.9.7(安装路径)
path ;%ANT_HOME%\bin; 如果没有path变量,则新建一个。
检验是否安装成功:
在cmd中输入命令ant -v ,如图表示安装成功
4. ant + jmeter 组合
4.1、将Jmeter所在目录下extras子目录里的ant-jmeter-1.1.1.jar复制到ant所在目录lib子目录之下,ant运行时才能找到"org.programmerplanet.ant.taskdefs.jmeter.JMeterTask"这个类,之后可以触发 Jmeter脚本
4.2、建了一个目录apache-jmeter-4.0\reportlog,目录中分别建立了html和jtl两个文件夹,之后Ant运行之后将jtl中的文件转换成html中
4.3、在...\apache-ant-1.9.7-bin文件中建立一个build.xml文件(将build.xml和脚本放到相同目录下面,方便操作),build.xml内容如下:
<?xml version="1.0" encoding="UTF-8"?> <project name="ant-jmeter-test" default="run" basedir=".">
<tstamp>
<format property="time" pattern="yyyyMMddhhmmss" />
</tstamp>
<!-- 需要改成自己本地的 Jmeter 目录-->
<property name="jmeter.home" value="/root/interface/apache-jmeter-2.13" />
<!-- jmeter生成jtl格式的结果报告的路径-->
<property name="jmeter.result.jtl.dir" value="/root/interface/result/jtl" />
<!-- jmeter生成html格式的结果报告的路径-->
<property name="jmeter.result.html.dir" value="/root/interface/result/html" />
<!-- 生成的报告的前缀-->
<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}">
<testplans dir="/root/interface/result/jmx" includes="*.jmx" />
<!-- testplans dir="D:\study\interface\result\jmx" includes="*.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" >
<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>
4.4.修改build.xml
修改下图中标记1的位置路径
将2和3 位置修改为存放jtl和html报告的路径
将下图标记4的位置修改为jmeter脚本的存放路径
4.5、修改Jmeter的bin目錄下jmeter.properties文件的配置:jmeter.save.saveservice.output_format=xml (build.xml需调用)
4.6 在存放脚本的目录下打开cmd,输入命令ant,出现如图所示的界面时,生成测试报告,报告保存在html文件夹中
5.解压并配置tomcat
解压Tomcat文件
新建变量名:CATALINA_BASE,变量值为tomcat安装路径
新建变量名:CATALINA_HOME,变量值为tomcat安装路径
打开PATH,添加变量值:;%CATALINA_HOME%\lib;%CATALINA_HOME%\bin;(分号是把path的各个变量分开)
检验tomcat的环境是否成功:第一种方法,在cmd中,输入startup,按回车键,启动tomcat
6.安装jenkins
这里我们使用的方法是用servlet容器来部署jenkins,使用的是tomcat
jenkins直接安装到tomcat对应的webapps目录,启动tomcat之后直接http://localhost:8080访问jenkins(启动jenkins服务:net start jenkins 和 关闭jenkins服务命令:net stop jenkins)
二、集成到jenkins
1.启动jenkins
2.系统设置->管理插件->可选插件,搜索Performance (Jmeter报告需要),安装此插件
3.因为需要用到ANT和JDK,所以需要在jenkins中添加插件,选择点击“系统管理”,之后在Global Tool Configuration的界面看到ant和jdk选项,然后将自己本地的ANT和JDK地址填写上
三.定时构建
定时构建语法:
* * * * *(五颗星,中间用空格隔开)
第一颗*表示分钟,取值0~59
第二颗*表示小时,取值0~23
第三颗*表示一个月的第几天,取值1~31
第四颗*表示第几月,取值1~12
第五颗*表示一周中的第几天,取值0~7,其中0和7代表的都是周日
eg:
每30分钟构建一次:H/30 * * * *
每2个小时构建一次:H H/2 * * *
每天早上8点构建一次:0 8 * * *
多个时间点,中间用逗号隔开:
每天的8点,12点,22点,一天构建3次:0 8,12,22 * * *
*:表示任意合理的数
a-b:表示一个范围,比如:5-8 * * * * OR * 5-8 * * *。具体表达的意思参考上面的含义
a-b/c OR */c:表示一个范围内每个c构建一次,比如:5-10/2 * * * * OR * */3 * * * 具体表达的意思参考上面的含义
a,b,c:表示为a、b、c时构建一次,比如:7,8,9 * * * * OR * * 13,5 * * 具体表达的意思参考上面的含义
我的构建:每周一到周五早上10点 :0 10 * * 1-5
四、集成优化
1.发送邮件
2.邮件中添加报告附件
3.优化报告格式
在jenkins系统管理中输入以下脚本运行:
System.setProperty("hudson.model.DirectoryBrowserSupport.CSP", "")
最新文章
- (转) 从0开始搭建SQL Server AlwaysOn 第三篇(配置AlwaysOn)
- 不重新编译php安装配置eAccelerator
- 【系统篇】从int 3探索Windows应用程序调试原理
- 解读ASP.NET 5 &; MVC6系列(2):初识项目
- hibernate注解方法使用总结(转)
- JVM GC原理
- iOS App上架AppStore 会遇到的坑
- .html和.htm的区别
- data structure
- java面向对象编程--第九章 多态和抽象
- [SQL]sql语句中charindex的用法
- UIView的frame和bounds的含义
- HW5.14
- Linux I2C设备驱动编写(一)
- C#有关 字符串方法的使用
- [Javascript] Safe Nested Object Inspection
- ONOS系统架构演进,实现高可用性解决方案
- pho
- 使用jQuery中trigger()方法自动触发事件
- Kinect 骨骼追踪数据的处理方法
热门文章
- Nagios监控配置文件及监控流程
- Day03 - Ruby比一比:Module的include与extend
- ARTS打卡计划第一周-Share-系统字典模块的设计
- windows 下用命令来操作定时任务
- python 的xlrd模块
- 2018-2019-2 20175218 实验二《Java面向对象程序设计》实验报告
- 贝叶斯分类器,随机森林,梯度下载森林,神经网络相关参数的意义和data leakage
- windows server 2012R2 故障转移集群配置
- 面向对象的 __slots__
- Linux 学习笔记 3:Shell 基础