一、准备

 

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

点我查看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", "")

jmeter+ant+jenkins接口自动化环境搭建的更多相关文章

  1. Jmeter+ant+Jenkins接口自动化框架搭建

    摘自:https://testerhome.com/topics/13389 一.背景  上一篇讲了Jmeter 接口自动化-脚本数据分离实例,我们知道怎么利用Jmeter去编写接口自动化脚本,但是接 ...

  2. Win10系统Jmeter+maven+Jenkins接口自动化环境搭建(一)

    Jmeter+maven+Jenkins实现接口自动化,需要使用idea或eclipse配置maven项目,这里我使用的是idea.具体步骤如下: 1.安装jmeter+jdk jmeter安装之前需 ...

  3. jmeter+ant+jenkins接口自动环境搭建

    ant 下载地址:http://archive.apache.org/dist/ant/binaries/ 下载:apache-ant-1.9.7-bin.zip 解压到系统盘下:D:\apache- ...

  4. Jmeter+Ant+Jenkins接口自动化框架

    最近应公司要求,搭建一套接口自动化环境.看到通知邮件,没有多想就确定了Jmeter路线.可能有些人会 说,为啥不用python,相对而言高大上一些.因为公司内部现在项目有用到Jmeter,正好可以结合 ...

  5. Jmeter+Ant+Jenkins接口自动化持续集成环境搭建(Linux)

    一.安装说明 系统环境:CentOS release 6.4 JDK版本:jdk1.8.0_181 Jmeter版本:apache-jmeter-3.0 Ant版本:apache-ant-1.9.13 ...

  6. Jmeter+ant+jenkins接口自动化测试 平台搭建(一)

    平台简介 一个完整的接口自动化测试平台需要支持接口的自动执行,自动生成测试报告,以及持续集成.Jmeter 支持接口的测试,Ant 支持自动构建,而 Jenkins 支持持续集成,所以三者组合在一起可 ...

  7. Jmeter+Ant+Jenkins 接口自动化之简单demo

    之前的文章我们已经分享过了 Jmeter+Ant 的批量执行 ,并且搭建好了Jenkins部署平台,如何再将三者完美结合呢? 1.首先打开Jenkins主页面,进入“系统管理-插件管理”,安装相关的插 ...

  8. Jmeter+Ant+Jenkins接口自动化测试框架搭建

    前言 软件开发的V模型大家都不陌生,其中测试阶段分为单元测试→功能测试→系统测试→验收测试.其中单元测试一般由开发同学们自己完成,大部分测试具体实施(这里不包括用例设计)是从单体功能测试开始着手的. ...

  9. Jmeter+ant+jenkins接口自动化测试 平台搭建(三)

    四.报告优化 Jmeter 默认生成报告不是很详细,因此我们需要进行优化.这里我们使用新的报告模板:默认的报告模板是 jmeter-results-detail-report_21.xsl 先上效果图 ...

随机推荐

  1. Day08 - Ruby比一比:String的+=与concat串接

    前情提要: 在第七天我们透过比较Symbol和String,发现字串比符号多了更多方法!为了活用string method,今天我们接续前文,来探讨一题跟字串有关的题目: Ruby经典面试题目#08( ...

  2. ES6 Promise 用法转载

    Promise是一个构造函数,自己身上有all.reject.resolve这几个眼熟的方法,原型上有then.catch等同样很眼熟的方法. 那就new一个 var p = new Promise( ...

  3. PTA变成总结1

    1)实验代码 #include<stdio.h>int main(){ int N,k,n,i,j,p,m,ge; char op; while(1){  scanf("%d % ...

  4. @Transactional 事务说明

    这里面有几点需要大家留意:A. 一个功能是否要事务,必须纳入设计.编码考虑.不能仅仅完成了基本功能就ok.B. 如果加了事务,必须做好开发环境测试(测试环境也尽量触发异常.测试回滚),确保事务生效.C ...

  5. Win10系统下,本地连接远程桌面(Win2016)图解

    1.Win+R在运行框中输入mstsc,回车 2.在出现的远程登陆窗口中,计算机中输入远程桌面IP 3.点击显示选项按钮,在远程桌面窗口中,点击常规(默认),输入登陆的用户名: XXXXXX 4.点击 ...

  6. [转]11个教程中不常被提及的JavaScript小技巧

    原文地址: https://www.cnblogs.com/ld1024/p/10723827.html 这次我们主要来分享11个在日常教程中不常被提及的JavaScript小技巧,他们往往在我们的日 ...

  7. 前端生成pdf

    https://stackoverflow.com/questions/31610129/pdfmake-html-table-to-pdfmake-table https://www.jianshu ...

  8. volatile和synchronized实现内存可见性的区别

    先看看synchronized实现内存可见性 加锁(synchronized同步)的功能不仅仅局限于互斥行为,同时还存在另外一个重要的方面:内存可见性.我们不仅希望防止某个线程正在使用对象状态而另一个 ...

  9. cat <<EOF

    1.cat >file记录的是键盘输入,相当于从键盘创建文件,并且只能创建新文件,不能编辑已有文件.>是数据重导向,会将你输入的文本内容输出到file中. 2.cat <<EO ...

  10. win7系统标准用户恢复administrator账号方法

    一次误操作,把管理员账号给禁用了,满眼的泪花~~~~~~~~~ 标准用户,什么都干不了,怎么办呢????? 度娘一下,各种奇葩答案,就是解决不了 呵呵,最后找到了解决方法: 1.开机后BIOS过后,按 ...