搭建环境:

JDK:jdk1.8.0_92

Ant:apache-ant-1.9.7

Jmeter: apache-jmeter-3.0

Jenkins:jenkins-2.19.3

具体环境配置

1、jdk安装及配置,自行查找,不再细说

2、jmeter安装及配置:

1)、apache-jmeter-3.0压缩包解压到指导目录

2)、环境变量配置:JMETER_HOME(D:\apache-jmeter-3.0)

3)、运行cmd, 输入jmeter -version检验安装成功

4)、运行apache-jmeter-3.0\bin\jmeter.bat,成功进入jmeter界面即可

3、ant安装及配置:

1)、apache-ant-1.9.7解压到指导目录

2)、环境变量配置:ANT_HOME(D:\apache-ant-1.9.7),path(%ANT_HOME%\bin)classpath(D:\apache-ant-1.9.7\lib)

3)、运行cmd, 输入ant -version检验安装成功

4)、本地调试使用ant构建运行Jmeter,并且生成jtl、Html报告;

  • 配置build.xml,放在D:\apache-jmeter-3.0\demo下
  • 修改Jmeter的bin目录下jmeter.properties文件的配置:  jmeter.save.saveservice.output_format=xml  (jmeter默认保存的是.csv格式的文件)
  • 将jmeter的extras目录中ant-jmeter-1.1.1.jar包拷贝至ant安装目录下的lib目录下
  • 命令行切换目录到测试脚本存放目录,输入ant,按enter执行即可。

5)、ant生成的HTML报告优化注意点:

  • 测试报告没有数据,页面为空:

    第一步:确保D:\apache-jmeter-3.0\bin\jmeter.properties对应参数输出开关为true

    第二步:需要把jmeter3.0下的jmeter-results-detail-report.xsl换成jmeter-results-detail-report_21.xs即可解决

  • 测试报告上data report ,min,max显示NAN:

    第一步:将apache-jmeter-3.0\lib中的serializer-2.7.2.jar、xalan-2.7.2.jar复制到apache-ant-1.9.7\lib中

    第二步:修改build.xml的配置

4、Jenkins的安装及配置

1)、安装的是jenkins-2.19.3.msi安装版,也可安装war包,根据自己喜好选择即可;

2)、双击jenkins.msi启动安装,默认安装在C盘,然后启动成功。

3)、Jenkins服务默认端口为8080,如与其他服务冲突,可在..\Jenkins\jenkins.xml中修改默认端口,修改为–httpPort值即可,我用的默认端口号;

4)打开Jenkins,首次进入会默认让你选择安装插件(此处如果完全不清楚自己需要什么插件,建议全选)。插件安装完成之后,需要设置登录用户,按照自己喜好设置即可。

5)进入Jenkins主页,进行系统设置及工具配置

  • 系统管理---系统设置,配置Jenkins Location和Extended E-mail Notification即可,这里用的是自己的公司邮箱配置。

  • 系统管理–工具设置,配置jdk,ant的本地目录,具体如下

6)创建job,进行构建配置,插件配置

  • 新建–选择一个自由风格的软件项目创建。
  • job配置,general下面配置2个地方,如下:

 丢弃旧的构建:保存的构建天数设置为7天,最大数为30,方便查看本周的测试情况,具体根据自己的需要设置。(默认都是1)

自定义工作目录,方便后续报告生成等,默认的工作目录在C盘下。

  • 构建触发器的配置,可实现定时的自动化运行job,实现持续构建。考虑压测对服务器的压力,为了不影响正常的工作,这里设置为每天晚上10进行测试(注意不要让电脑出了休眠状态)。
    这里说明下Build periodically与Poll SCM的区别:
    Build periodically:周期进行项目构建(它不care源码是否发生变化)。
    Poll SCM:定时检查源码变更(根据SCM软件的版本号),如果有更新就checkout最新code下来,然后执行构建动作。
    目前不设置代码更新,所以Poll SCM不需要配置。

  • 点击增加构建步骤,配置  Execute Windows batch command,删除报告下面已有的报告数据,避免影响当前运行的结果。

配置invoke ant,设置为本地的ant版本,同时设置build文件的目录

  • 点击增加构建后步骤,配置Publish HTML report,方便查看测试结果HTML报告

配置Publish Performance test result report,查看具体的性能测试曲线图标

配置邮件插件Editable Email Notification,这里不需要做任何处理,都用默认值,除了触发器Triggers改为always即可。因为默认只有测试失败邮件才可以发送成功。

7)运行job,查看输出结果:选择job,立即构建运行job,如下:

  • Performance Report查看构建持续时间曲线图,这里以病人信息页面向服务器请求压测结果举例。从图可以看到线程的响应时间随时间变化越来越快,一开始比较慢,主要是短时间内同时启动200各线程,反应慢。样本数,平均响应时间等参数也可以看到。

  • HTML Repoet查看生成的HTML报告,一目了然看到线程总数,失败成功比率等参数。

9)查看发送邮件展示:目前只设置了构建版本,构建结果,构建原因,构建日志几个参数,后续可以继续扩展其它参数。

常见问题处理

    1、HTML report样式显示混乱,跟本地ant生成的css渲染不一样。

解决方法:在系统管理,脚本命令行输入System.setProperty("hudson.model.DirectoryBrowserSupport.CSP", "") ,点击运行即可。如果服务重启的话,这里需要重新设置运行下。

2、performance trend显示空白问题,升级performance plugin插件即可。

Jmeter+Jenkins+Ant自动化集成环境搭建的更多相关文章

  1. Jenkins + Jmeter +Ant自动化集成环境搭建(一)

    所需工具 一.jmeter 工具下载 https://jmeter.apache.org/  配置环境JDK等及各种插件可以看小七之前的教程 二.Ant安装(http://ant.apache.org ...

  2. Jenkins+Jmeter+Ant自动化集成环境搭建

    1.搭建环境,安装以下工具 JDK:jdk1.7.0_79 Ant:apache-ant-1.9.7 Jmeter: apache-jmeter-3.0 Jenkins: jenkins-1.651. ...

  3. 从零开始搭建Jenkins+Docker自动化集成环境

    本文只简单标记下大概的步骤,具体搭建各个部分的细节,还请自行搜索.第一.二部分只是对Jenkins和Docker的简单介绍,熟悉的同学请直接跳到第三部分. 一.关于Jenkins Jenkins简介 ...

  4. Docker学习总结(13)——从零开始搭建Jenkins+Docker自动化集成环境

    本文只简单标记下大概的步骤,具体搭建各个部分的细节,还请自行搜索.第一.二部分只是对Jenkins和Docker的简单介绍,熟悉的同学请直接跳到第三部分. 一.关于Jenkins Jenkins简介 ...

  5. jmeter + ant + jenkins 自动化集成环境搭建

    所需工具 一.jmeter 工具下载 https://jmeter.apache.org/  配置环境JDK等及各种插件 二.Ant安装(http://ant.apache.org/) 安装Ant是为 ...

  6. ant+jenkins+testng+selenium集成环境搭建

    一.前序工作 下载ant:http://ant.apache.org/bindownload.cgi 下载jenkins:http://jenkins-ci.org/ 下载testng:http:// ...

  7. Jenkins+Docker自动化集成环境搭

    关于Docker Docker 简介 Docker现在是Github社区最火的项目之一,Docker是个容器,或许你听过lxc,你可能知道Tomcat这个Web容器,容器是什么概念,意会就好.问个问题 ...

  8. Jenkins+PowerShell持续集成环境搭建(八)邮件通知

    1. 默认邮件功能: Jenkins自带的邮件功能比较简单,配置如下: 设置默认发件人地址: 2. Email Extension Plugin 为了能够更加灵活地使用邮件功能,需要安装Email E ...

  9. Jenkins+PowerShell持续集成环境搭建(七)构建触发器

    Jenkins 有三种类型的构建触发器,如下图: Build after other projects are built:在其他项目构建后构建: Build periodically:定时构建: P ...

随机推荐

  1. react 从零开始搭建开发环境

    1.创建 package.json 项目 npm init 2.安装 webpack, 并且设置为项目依赖: npm install webpack --save-dev 当然你必须之前已经在 -g ...

  2. cf246 ENew Reform (并查集找环)

    Berland has n cities connected by m bidirectional roads. No road connects a city to itself, and each ...

  3. 深入浅出AOP(一)

    动态代理实现AOP: AOP事实上非常早之前依照做出来了一些东西,之所以不敢说做出来了.是由于它是什么?怎么实现?做出来的东西是不是?先前一直查资料.查到的资料跟着做.到后来发现,AOP越来越大,而非 ...

  4. JQuery实现表格行的上移、下移、删除、增加

    <%@ page language="java" import="java.util.*" pageEncoding="GBK"%&g ...

  5. 图像处理之基础---很好的一个快速比较两副图片是否相同的code 可用于公安鉴别

    转自Codeproject http://www.codeproject.com/dotnet/comparingimages.asp Public Enum CompareResult ciComp ...

  6. AngularJS 基础入门(指令篇)

    一.介绍 AngularJS 是google 开发人员设计的一个前端开发框架,它是由是由javascript 编写的一个JS框架.通常它是用来在静态网页构建动态应用不足而设计的. AngularJS特 ...

  7. oracle的日期蛋

    一切都是扯鸡巴蛋. 在网上查oracle的日期函数用法,得到一大堆语法,林林总总,都是扯鸡巴蛋,没能解决我的问题. 其实,我想写这么一条语句:查找某个日期(不含时分秒)产生或有关的记录.咋写? SQL ...

  8. 2016/3/27 PHP中include和require的区别详解

    1.概要 require()语句的性能与include()相类似,都是包括并运行指定文件.不同之处在于:对include()语句来说,在执行文件时每次都要进行读取和评估:而对于require()来说, ...

  9. Dom4J XML转bean

    package com.baiwang.bop.utils; import com.baiwang.bop.client.BopException; import org.dom4j.Element; ...

  10. manacher求最长回文子串算法

    原文:http://www.felix021.com/blog/read.php?2040 首先用一个非常巧妙的方式,将所有可能的奇数/偶数长度的回文子串都转换成了奇数长度:在每个字符的两边都插入一个 ...