一、安装说明

系统环境:CentOS release 6.4

JDK版本:jdk1.8.0_181

Jmeter版本:apache-jmeter-3.0

Ant版本:apache-ant-1.9.13

Jenkins版本:jenkins-war:2.138.1

二、安装JDK

将jdk-8u181-linux-i586.tar.gz解压后移动到指定目录,然后将以下内容加入/etc/profile文件内

 #jdk
JAVA_HOME=/usr/java/jdk1..0_181
JRE_HOME=/usr/java/jdk1..0_181/jre
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
export JAVA_HOME JRE_HOME PATH CLASSPATH

环境变量生效后,如下图:

三、Jmeter安装与配置

将apache-jmeter-3.0.zip解压后移动到指定目录,然后将以下内容加入/etc/profile文件内

 export JMETER_HOME=/usr/local/apache-jmeter-3.0
export PATH=$JMETER_HOME/lib/ext/ApacheJMeter_core.jar:$JMETER_HOME/lib/jorphan.jar:$JMETER_HOME/lib/logkit-2.0.jar:$JMETER_HOME/bin:$PATH

修改Jmeter/bin目录下的jmeter.properties文件中的jmeter.save.saveservice.output_format=csv改成jmeter.save.saveservice.output_format=xml,如下图:

jmeter默认保存的是.csv格式的文件,我们把它改为xml格式,以便后期方便Jenkins展示。

四、Ant安装与配置

将apache-ant-1.9.13-bin.tar.gz解压后移动到指定目录,然后将以下内容加入/etc/profile文件内

 export ANT_HOME=/usr/local/apache-ant-1.9.
export PATH=$PATH:$ANT_HOME/bin

环境变量生效后,如下图:

将jmeter安装包extras文件夹里ant-jemter-1.1.1.jar 复制到ant\lib下

进入apache-jmeter-3.0\extras运行ant ,查看该目录下是否出现Test.jtl、Test.html文件,若有,则构建成功(注意:Test.jmx是默认存在的Sample脚本文件),如下图:

构建失败,jmeter3.0中没有/extras/jmeter-results-detail-report_21.xsl,这个文件,从低版本中拷贝过来就可以了,如下图:

五、编写Ant的build.xml文件

 <?xml version="1.0" encoding="UTF-8"?>
<project name="JmeterTest" default="run" basedir=".">
<tstamp>
<format property="time" pattern="yyyyMMddHHmmss" />
</tstamp> <!-- 需要改成自己本地的 Jmeter 目录-->
<property name="jmeter.home" value="/usr/local/apache-jmeter-3.0" />
<!-- jmeter生成jtl格式的结果报告的路径-->
<property name="jmeter.result.jtl.dir" value="/usr/local/Jmeter_Test\ResultLog\jtl" />
<!-- jmeter生成html格式的结果报告的路径-->
<property name="jmeter.result.html.dir" value="/usr/local/Jmeter_Test\ResultLog\html" />
<!-- 生成的报告的前缀-->
<property name="ReportName" value="JmeterTestReport" />
<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}">
<!-- 声明要运行的脚本。"*.jmx"指包含此目录下的所有jmeter脚本-->
<testplans dir="/usr/local/Jmeter_Test/Script" 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:ss" />
</tstamp>
<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="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>

将build.xml文件放入/usr/local/Jmeter_Test目录下

进入build.xml所在目录,输入“ant 或 ant run(run为build.xml中的task名)”,执行结果如下图

六、Jenkins配置

Jenkins安装见上一篇--Jenkins持续集成环境部署

进入Jenkins系统管理→管理插件,安装HTML Publisher 和Performance 插件以展示测试报告。

进入系统管理→全局工具配置页面设置jdk和ant,如下图所示:

新建一个自由风格的测试项目,如下图所示:

项目配置步骤一:

项目配置步骤二:构建触发器,选择此项目构建的触发条件,例如本项目的是为了实现接口的定时监控,于是选择Build periodically(定期构建)。注意:关于定期构建参数的说明:"* * * * *",总共有5个参数,分别代表分(0~59)、时(0~23)、天(1~31)、月(1~12)、周(0~7,0和7表示星期天);

项目配置步骤三:设置Invoke Ant

项目配置步骤四:设置HTML报告展示

项目配置步骤五:设置jtl报告展示

HTML报告展示

注意:在jenkins中使用html publisher查看html报告时,发现显示不全,查看官方文档后,发现是安全问题所导致的。解决办法是:在Jenkins的系统管理→脚本命令行中输入“System.setProperty("hudson.model.DirectoryBrowserSupport.CSP", "")”后,点击“运行”,再次生成报告后则能够全部正常显示。

Jtl报告展示

Jmeter+Ant+Jenkins接口自动化持续集成环境搭建(Linux)的更多相关文章

  1. jmeter+ant+jenkins 接口自动化测试持续集成(送源码)

     9.1  安装和介绍 JMeter 安装文件路径:https://pan.baidu.com/s/1kVJdnuv. JMeter 是轻量级的开源且稳定的自动化测试工具. 思路:在接口说明文档中整理 ...

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

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

  3. Linux下Jenkins+git+gradle持续集成环境搭建

    Linux下Jenkins+git+gradle持续集成环境搭建 来源:IT165收集  发布日期:2014-08-22 21:45:50 我来说两句(0)收藏本文   一.项目介绍 和 linux ...

  4. jenkins+maven+svn 持续集成环境搭建

    说明:部署传统的web应用(.war) 准备工作: (1) 系统环境:CentOS7 (2) 安装JDK:https://www.cnblogs.com/myitnews/p/11493847.htm ...

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

    一.准备   1.安装jdk  --->点击查看安装教程 2.安装jmeter  ,官网下载jmeter解压,配置jmeter环境: JMETER_HOME (解压jdk路径) Path (;% ...

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

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

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

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

  8. Docker+Jenkins_自动化持续集成环境搭建

    前一篇文章里已经在内网环境搭建好docker 详见:https://www.cnblogs.com/befer/p/9107503.html, 现在接着搭建一个Docker+Jenkins的集成环境 ...

  9. Jenkins+Jmeter+Ant自动化持续集成环境搭建

    [前言] 今天让我们先把准备工作做好 >> 搭建环境! [正文] JDK+Jmeter安装教程: 参考博客:https://www.cnblogs.com/baoziluo/p/79056 ...

随机推荐

  1. Markdown,让你的代码高亮起来

    当你的审美提高或者习惯了Linux下的黑色代码高亮,已经不满足与博客园原有的代码高亮,那么这篇博客就是你的选择. 代码块高亮 代码块Highlight /* 使用了Monokai Sublime的黑色 ...

  2. 从0开始Jmeter接口测试实战

    在之前的文章中给大家介绍过接口测试文档和接口测试用例示例,本文基于Jmeter工具给大家介绍一下如何实现接口测试用例:包括发起Http请求,绕过登陆,验证响应.JMeter是Apache组织开发的基于 ...

  3. IList,List<T>转换为DataTable 常用收藏

    List<info> infos = Dal.GetInfos(); DataTable dt = new DataTable(); dt.Columns.Add("cName& ...

  4. ORACLE纯SQL实现多行合并一行

    项目中遇到一个需求,需要将多行合并为一行.表结构如下:NAME                            Null           Type---------------------- ...

  5. C语言|博客作业12—学期总结

    一.我学到的内容 二.我的收获 (1)https://edu.cnblogs.com/campus/zswxy/CST2019-4/homework/7603 收获:第一次接触C语言和写博客,感觉特别 ...

  6. sklearn学习一

    转发说明:by majunman    from HIT    email:2192483210@qq.com 简介:scikit-learn是数据挖掘和数据分析的有效工具,它建立在 NumPy, S ...

  7. springboot整合admin管理平台

    server 端 <parent> <groupId>org.springframework.boot</groupId> <artifactId>sp ...

  8. [JZOJ6247]【NOI2019模拟2019.6.27】C【计数】

    Description n<=200000 Solution 比赛时没做出这道题真的太弟弟了 首先我们从小到大插入数i,考虑B中有多少个区间的最大值为i 恰好出现的次数不太好计算,我们考虑计算最 ...

  9. 1143, 3997: Dilworth定理的简单应用

    偏序集上的最小链覆盖等于最长反链 于是两道题 1143: [CTSC2008]祭祀river 求偏序集上的最长反链 转换成偏序集上的最小链覆盖 求个闭包,转换成最小路径覆盖,二分图匹配一发 #incl ...

  10. Python3学习笔记(十五):常用时间模块time和datetime

    一.time模块 1.时间戳 time.time() :从1970-01-01到至今的秒数 import time print(time.time()) 1529238004.2784646 2.等待 ...