jmeter+ant+jenkins 简单了解

嗯 最开始看 真的是一头雾水不知道从哪里下手 安装好的jenkins也又给卸载了,后来一篇博客对我的影响挺大的

简单说,就是 先学习  jmeter+ant 然后再集成到jenkins平台。哎 还是经验不够啊

呐 先放上这篇博客的链接点击打开链接

1.首先写jmeter脚本

这是对  获取验证码--登录--查看个人中心--修改个人资料--退出--自动登录   一个业务流用Jemter进行压力测试。

这里最后一个 是我我故意写错的请求,后面会用到。

顺便说一下,由于 登录需要第一个请求的验证码,但是验证码又不在服务器返回的数据里所以不能通过正则提取。在这里

我通过一个Cookie管理器,然后一个写死的验证码来进行登录这一步。

jmeter+ant+jenkins 简单了解

2.看一下我的jmeter的文件保存地址,里面都有些什么

report:这个是通过ant把JMeter的 .jmx文件 转化为xtml和jtl文件后 的文件夹,但是我这个文件夹里面是空的,我通过下面的那个build.xml把上述两个文件放到了 jenkins的文件路径下了 

build.xml : ant的build 执行文件,通过修改这个文件来进行一些ant的配置

获取手机验证码.jmx  : 就是 第一步 写的JMeter脚本文件

jmeter+ant+jenkins 简单了解

3.JMeter+ant

其实如果看过我最上面给出的大神链接,我一下说的基本都是废话

a.下载安装JMeter,并且会一些基本操作和使用

b.下载安装好ant,配置好了环境 ,确定在命令框 输入 ant -version  会出现ant的版本信息 

c.看好 第二步  文件夹把 JMeter脚本文件.jmx 和 build.xml 放到一起 然后下面给出build.xml的代码:


<?xml version="1.0" encoding="UTF-8"?>


<project name="ant-jmeter-test" default="run" basedir=".">
    <tstamp>
        <format property="time" pattern="yyyyMMddhhmm" />
    </tstamp>
    <!-- 需要改成自己本地的 Jmeter 目录-->  
    <property name="jmeter.home" value="D:\JMeter\apache-jmeter-3.2" />
    <!-- jmeter生成jtl格式的结果报告的路径   此处为jenkins持续集成 D:\Jenkins\jenkins-sys\workspace\report\ --> 
   <!-- <property name="jmeter.result.jtl.dir" value="D:\JMeter\apache-jmeter-3.2\workSp\report\jtl" /> -->
<property name="jmeter.result.jtl.dir" value="D:\Jenkins\jenkins-sys\workspace\report\jtl" />
    <!-- jmeter生成html格式的结果报告的路径  -->
   <!-- <property name="jmeter.result.html.dir" value="D:\JMeter\apache-jmeter-3.2\workSp\report\html" /> -->
<property name="jmeter.result.html.dir" value="D:\Jenkins\jenkins-sys\workspace\report\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}">
             <!-- 声明要运行的脚本。"*.jmx"指包含此目录下的所有jmeter脚本-->
            <testplans dir="D:\JMeter\apache-jmeter-3.2\workSp" includes="*.jmx" />


<property name="jmeter.save.saveservice.output_format" value="xml"/> 


        </jmeter>
    </target>
    
<!-- 此处添加的代码是为了解决ant生成的html,jmeter报告中MinTime和MaxTime没有数据的情况
<path id="xslt.classpath">
        <fileset dir="${jmeter.home}/lib" includes="xalan*.jar"/>
        <fileset dir="${jmeter.home}/lib" includes="serializer*.jar"/>
    </path> 
classpathref="xslt.classpath"
     force="true"
<param name="dateReport" expression="${report.datestamp}"/>
-->
<path id="xslt.classpath">
        <fileset dir="${jmeter.home}/lib" includes="xalan*.jar"/>
        <fileset dir="${jmeter.home}/lib" includes="serializer*.jar"/>
    </path>

    <target name="report">
        <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>


jmeter+ant+jenkins 简单了解

看到这里知道为什么我上一步说,report那个文件夹是空的吧。为了集成jenkins就把JMeter生成的两个文件放到了 jenkins的文件路径下了 。这个 build.xml 很总要 可以多看几遍有注释也可以多参考别人的。比如最上面放的那个链接。


 好了,然后 再命令框 进入当放build.xml和Jmeter的.jmx 路径下 输入 ant,如下图:


jmeter+ant+jenkins 简单了解


可以看到我的两个.jmx 已经被build succsessful

然后进入  上面写的结果报告路径看看一下

jmeter+ant+jenkins 简单了解

呐,一个html 一个jtl.都全了。

首先看看 html里面的内容 :

jmeter+ant+jenkins 简单了解

里面有我别的东西,被圈的就是 我们上面生成的 再打开来楼一眼:

jmeter+ant+jenkins 简单了解

是不是看着很舒服,几个http请求都有了,红色报错的就是我jmeter里面故意写的那个错误请求,为了又一个好的对比效果。

---------------------------------------这一步好长 来个分割线-------------------------------------------------------------

下面看 .jtl 文件

jmeter+ant+jenkins 简单了解

我直接打开了对应的jtl 文件,大家看一下。猛一看是不是看不懂,其实吧 仔细看好几眼也只能看个大概

下面给大家个一图,对比的看一下就明白了,都是些返回码 绝对时间 返回消息 字节大小之类的东西。

jmeter+ant+jenkins 简单了解

---------------------------------------分---分----分-----分--分---分---分割线-------------------------------------------

期间碰到了2个错误也顺便 贴出来:

jmeter+ant+jenkins 简单了解

第一个圈起来的额就不说了 就是把jmeter下的一个文件复制ant下,具体的 请百度

第二个圈起来的着实是让我 百度了好一会 实际情况是:

因为大家最开始很多都是复制的同一个代码所以很多这个问题。

哈哈哈,是不是很好玩。----------此处默默骂声 屁啊!

jmeter+ant+jenkins 简单了解


好了,jmete+ant 就到这里 下面开始集成jenjins

4.开始集成jenkins

说在前面的话:

本人对 jenkins是很不很不了解,搞不怎么清楚,现在也是。

所以 先给出一个链接大家先瞅瞅点击打开链接,然后百度下 jenkins怎么用

1.安装,可以百度下

2.看下主界面,然后点击新建

jmeter+ant+jenkins 简单了解

3.输入名字,构建一个自由风格软件项目,最下面 点击 ok

jmeter+ant+jenkins 简单了解


4.由于前面已经说了 自己也是菜,所以并没有配置很多东西,但是配置的都会把图贴上来

这个是,额  看图中文字表达。 也可以点后面的 ? 号。看不懂就 翻译

jmeter+ant+jenkins 简单了解

5.源码管理没有  构架触发器没有,

构建环境; 把安装jdk和ant 是  系统环境变量里的ANT_HOME 和 ANT_HOME 拿出来放到 

系统管理--Global Tool Configuration--JDK&ANT就可以了如图  后呢***

jmeter+ant+jenkins 简单了解
***这里就能够选择了 jmeter+ant+jenkins 简单了解

6.在构建里 加入InvokeAnt 配置如图

在构建后操作里 加入 public HTML reports 配置如图 jmeter+ant+jenkins 简单了解

如果,没有找到 那就是插件没安装,至于怎么安装怎么安装 这个不难就不说了多看几篇博客 也是有很多好处的。 

之前说了我菜 是真的才 还有一个图形的功能插件那个功能  我还没弄出来 老是报错。所以请像大神学习

7.最后了 就是运行了 点击 立即构建  然后点击HTML_Report 看看 结果就可以了。

jmeter+ant+jenkins 简单了解


在查看HTML Report 时如果发现请求并没有问题但是又大片的红,或者 显示不全的问题 请看这篇博客点击打开链接

-----------------------------------------一点点学习的分隔符----------------------------------------------

嗯,如果对这些有了解后 可以参照这篇博客点击打开链接

这次 我只是把报告优化了一下jmeter+ant+jenkins 简单了解

对于那个 Performance Report ,虽然出现了一些数据但是 依旧有错。Rpeponse time 的折线图也没显示出来,哎 还是得继续扒资料 看!

jmeter+ant+jenkins 简单了解