JMeter是一个软件,使负载测试或业绩为导向的业务(功能)测试不同的协议或技术。 Apache软件基金会的Stefano Mazzocchi JMeter的最初的开发。他写道:它主要对 Apache JServ

(现在称为如Apache Tomcat项目)的性能进行测试。Apache后来重新设计JMeter 增强的图形用户界面和添加功能测试能力。Jmeter最初使用到性能测试,后来经过修改,可以对软件的不
仅仅进行性能测试,还可以进行接口测试与功能,本文章在这里要详细介绍的就是,使用Jmeter测试一个产品的接口测试,并把Jmeter与ant,Jenkins结合起来,自动化的去执行,并且生成
给予html的测试报告。关于jmeter的其他详细信息,建议看官方的文档,解释的比较详细和权威。
    jmeter下载地址为:http://jmeter.apache.org/download_jmeter.cgi,也可以到本人的百度网盘下载,下载地址为:http://pan.baidu.com/s/1kVjgAxx,下载完成后,解压文件,
加压后,到biin目录下,点击jmeter.bat启动jmeter(如果是linux环境,给jmeter.sh可执行的权限,然后执行jmeter.sh就可以启动jmeter),见启动后的界面,见如下的截图:
这里已m.cyw.com为案例,测试网易邮箱登录,弹出的接口,见创建后的项目(这里重点介绍与ant,jenkins的整合,不详细介绍jmeter的使用方法),见创建后的项目计划截图:
 
下来来看m.cyw.com为案例,跳转到西安市的接口为:http://m.cyw.com/index.php?m=api&c=cookie&a=setcity,请求为post请求,具体见如下postman对该接口的请求截图:
见如上,该接口在postman中调用,返回的json字符串,完善jmeter,见完善后的jmeter截图以及附件:
在jmeter中,点击run,可以看到执行的结果,见截图:
依据结果中,可以看到执行的结果,是通过的,下来把jmeter与ant进行整合,实现自动化的执行,而不是每次执行,得打开jmeter的界面,点击run去执行,ant的下载地址为:
http://ant.apache.org/,下载后,在环境变量中配置ant,新建ANT_HOME,见截图:
然后在path环境变量中加入%ANT_HOME%\bin,配置完成后,打开cmd命令提示符,输入ant -v ,出现如下截图,说明ant环境配置OK,见截图:
 
想要实现jmeter使用ant去执行,需要做如下几个操作:
1、修改jmeter配置文件jmeter.properties,把jmeter.save.saveservice.output_format=csv修改为jmeter.save.saveservice.output_format=xml,并
不要注释,见截图:
2、在jmeter的extras目录下,把ant-jmeter-1.1.1.jar文件复制到ant的lib目录下,见截图;
3、在jmeter当前目录下创建TestCase文件夹,并把wap.jmx复制到TestCase目录下,见截图:
4、编写build.xml文件,ant执行时候,会使用到该文件,见build.xml文件的源码:
<?xml version="1.0" encoding="UTF8"?>

<project name="Jmeter-TestCase" default="run" basedir=".">
    <tstamp>
        <format property="time" pattern="yyyyMMddhhmm" />
     </tstamp>

     <!--jmeter的目录-->
     <property name="jmeter.home" value="D:\git\cyw\cyw_jmeter\apache-jmeter-2.12" />
     <property name="jmeter.result.jtl.dir" value="D:\git\cyw\cyw_jmeter\apache-jmeter-2.12\TestCaset\report\jtl" />
     <property name="jmeter.result.html.dir" value="Q:\tools\apache-jmeter\test\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}">
            <testplans dir="D:\git\cyw\cyw_jmeter\apache-jmeter-2.12\TestCase" includes="wap.jmx" />
             <property name="jmeter.save.saveservice.output_format" value="xml"/>
         </jmeter>
     </target>

    
     <target name="report">
         <xslt in="${jmeter.result.jtlName}"
              out="${jmeter.result.htmlName}"
                  <!--jmeter的xml模板-->
              style="${jmeter.home}/extras/jmeter-results-detail-report_21.xsl" />
         <copy todir="${jmeter.result.html.dir}">
             <fileset dir="${jmeter.home}/extras">
                 <include name="collapse.png" />
                 <include name="expand.png" />
             </fileset>
        </copy>
     </target>

</project>

5、到D:\git\cyw\cyw_jmeter\apache-jmeter-2.12\TestCase目录下,执行ant命令,就会执行接口测试用例,生成给予html的测试报告,见ant执行的命令:
 
从命令行中,可以看到执行已成功,到Report目录下,可以看到生成的html与jtl,到html目录下,可以看到html的报告,见截图:
打开html,可以看到详细的执行结果,见截图:
 
OK,已生成想要的结果报告,特别说明,apache-jmeter-2.12\extras目录下的xml文件可以自定义,你看到的html报告可能和我截图的不一致,不过,你也可以根据自己的爱好修改xml文件。
Jenkins是一个持续集成的工具,下载地址为:https://jenkins.io/index.html,下载后,把jenkins.war放到tomcat的webapps目录下,启动tomcat,在浏览器访问http://localhost:8080/jenkins
新创建工程,可以把jmeter,ant,jenkins结合起来,实现接口自动化或者性能测试的自动化测试平台,见jenmins截图:
在Jenkins点击立即构建,就可以执行了。
 
OK,基本就介绍到这,如有任何疑问,可扫描关注本人的微信公众平台,或者加入本人的qq群,一起讨论,共同进步,也可看本人写的百度阅读写的自动化测试电子书,地址:http://yuedu.baidu.com/ebook/3c0077aaa32d7375a41780bb

Jmeter&Ant构建自动化测试平台的更多相关文章

  1. Jenkins环境搭建(2)-搭建jmeter+ant+jenkins自动化测试环境

    一直想在持续集成方向学习并研究一番,近期正准备结合jmeter+ant+jenkins做自动化接口测试,在学习的同时,正好实践一番,毕竟实践才是真理. 在搭建jmeter+ant+jenkins环境有 ...

  2. Jmeter + Ant 构建接口自动化

    1.首先安装ANT,解压,建议放根目录. 对应安装包已上传 2.环境变量配置新建 ANT_HOMEANT_HOME:解压的路径path环境配置新增Path:%ANT_HOME%\binclasspat ...

  3. jenkins+jmeter+ant搭建接口测试平台

    接口测试的重点是检查数据的交换,传递和控制管理过程以及系统间的相互逻辑依赖关系. 接口测试的流程 项目启动后,测试人员要尽早拿到接口测试文档. 开始编写接口测试用例 将接口测试用例部署到持续集成的测试 ...

  4. Linux下搭建Jmeter+Ant+Jenkins自动化测试框架

    前言 在之前的文章中,我们学习了通过Ant调用Jmeter脚本生成HTML测试报告,但未实现自动执行脚本生成报告,同时生成的报告是在Linux下,查看报告很不方便.因此,我们将结合Jenkins来进一 ...

  5. Jenkins+maven+jmeter+eclipse搭建自动化测试平台

    一.准备工作 1.jmeter准备测试脚本 2.maven环境配置 3.eclipse创建maven项目 4.Jenkins集成项目 二.jmeter准备测试脚本 使用jmeter准备测试脚本(不管录 ...

  6. 基于jmeter+ant实现的接口自动化测试

    jmeter+ANT接口自动化测试框架 项目说明 本框架是一套基于jmeter+Ant+Excel+Python而设计的数据驱动接口自动化测试框架,jmeter 作为执行器,Ant 作为构建工具,进行 ...

  7. Jmeter+Ant+Jenkins构建接口自动化测试平台(Windows)

    一.首先先介绍下我的环境: 1. win10系统 2. ant版本:apache-ant-1.10.1(作用:执行脚本,便于后期的持续集成,下载地址:http://ant.apache.org/bin ...

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

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

  9. Jenkins+Ant+Jmeter自动化测试平台

            持续集成 持续集成是一种软件开发实践,即团队开发成员经常集成他们的工作,通常每个成员每天至少集成一次,也就意味着每天可能会发生多次集成.每次集成都通过自动化的构建(包括编译,发布,自动 ...

随机推荐

  1. java启动参数二

    非标准参数又称为扩展参数,其列表如下: -Xint 设置jvm以解释模式运行,所有的字节码将被直接执行,而不会编译成本地码. -Xbatch 关闭后台代码编译,强制在前台编译,编译完成之后才能进行代码 ...

  2. Hdu 3605 Escape (最大流 + 缩点)

    题目链接: Hdu 3605  Escape 题目描述: 有n个人要迁移到m个星球,每个星球有最大容量,每个人有喜欢的星球,问是否所有的人都能迁移成功? 解题思路: 正常情况下建图,不会爆内存,但是T ...

  3. 二进制流BinaryFormatter存储读取数据的细节测试

    二进制流的使用很方便,为了更好的理解应用它,我创建简单对象开始测试它的增加特性和减少特性. [Serializable] class Data----------开始时候的存储对象 { public ...

  4. Java多线程学习---------超详细总结(java 多线程 同步 数据传递 )

    目录(?)[-] 一扩展javalangThread类 二实现javalangRunnable接口 三Thread和Runnable的区别 四线程状态转换 五线程调度 六常用函数说明 使用方式 为什么 ...

  5. LD_LIBRARY_PATH与-L的关系以及延伸

    最近跟同学讨论c++在编译时g++ -L.. 和LD_LIBRARY_PATH的问题,今天在做一个东西的时候发现,我对这两个东西的理解是错误的,经过一番研究,写下我对这些东西的想法,如果有不对的地方, ...

  6. 理解http浏览器的协商缓存和强制缓存

    阅读目录 一:浏览器缓存的作用是什么? 二:理解协商缓存 1 Last-Modified/if-Modify-Since 2 ETag/if-None-Match 三:理解强制缓存 回到顶部 一:浏览 ...

  7. ABBYY Cup 3.0 - Finals (online version)

    A 开个数组记录一下 #include <iostream> #include<cstdio> #include<cstring> #include<algo ...

  8. 关于 Oracle 11g r2 Enterprise Manager (EM) 在windows环境无法启动的解决办法

    正确的解决办法是在安装的时候使用emca正确安装 如果已经安装过Enterprise Manager: 请用是如下命令卸载后重装 emca -deconfig dbcontrol db emca -r ...

  9. InChatter系统之服务器开发(一)

    服务器端是整个消息系统的中枢,类似与人类的大脑.没有他,根本无法实现客户端之间的交流,为什么呢?这也涉及到我们的系统涉及,在服务器端,每个客户端的标识数据都会在服务器端进行保存,在这种情况下,当某一个 ...

  10. c#中out参数的作用

    给你个简单的解释说法吧.虽然不完全对.但是我可以让你理解OUT有什么作用.呵呵 举个例子.每个方法只能有一个返回值.但是你想有多个返回值,呵呵.OUT就起作用了啊.比如分页,不光返回数据,还要返回总记 ...