背景

公司计划推接口和性能测试,搭建这个性能测试框架框架是希望能够让每个人(开发人员、测试人员)都能快速的进行性能,接口测试,而不需要关注性能测试环境搭建过程。因为,往往配置一个性能环境可能需要很长的时间。

该框架搭建 基于Jmeter和Jenkins搭建性能测试框架 和 jenkins+ANT+jmeter 接口测试环境搭建 演化过来。

Jmeter GUI上制定测试计划

Thread Group

用函数__P()设置属性名和默认值的形式设置这三个属性,以方便在使用no-GUI模式启动Jmeter进行测试时,使用–jmeterproperty选项对属性值进行赋值。

CSV Data Set Config

并发数配置

HTTP Request

HTTP Request关联

jenkins调用command non-GUI方式执行Jmeter

 

set RUNFOLDER=%WORKSPACE%
set JMETERBIN=D:\Devlop\jmeter\apache-jmeter-2.7\bin
set JMETERLIB=D:\Devlop\jmeter\apache-jmeter-2.7\lib
set RESULTJTL=%RUNFOLDER%\result.jtl
set TRANSJTL=$RUNFOLDER\trans.jtl
set EXCELJTL=$RUNFOLDER\execl.jtl
del -f -s -Q %RUNFOLDER%\*.jtl
del -f -s -Q %RUNFOLDER%\Report\* jmeter -n -t jmx\*.jmx -l result.jtl --jmeterproperty threadCount=%CONCURRENCY% --jmeterproperty LoopCount=%LOOPCOUNT% --jmeterproperty RampUp=%RAMPUP% --jmeterproperty jenkins_workspace=%WORKSPACE%

  调用ANT生成html报告

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

<project name="ant-jmeter-test" default="all" basedir=".">
<tstamp>
<format property="time" pattern="yyyyMMddhhmm" />
</tstamp>
<!-- 需要改成自己本地的 Jmeter 目录-->
<property name="jmeter.home" value="D:\Devlop\jmeter\apache-jmeter-2.7" />
<!-- jmeter生成jtl格式的结果报告的路径-->
<property name="jmeter.result.jtl.dir" value=".\" />
<!-- jmeter生成html格式的结果报告的路径-->
<property name="jmeter.result.html.dir" value=".\Report" />
<!-- 生成的报告的前缀 -->
<property name="ReportName" value="result" /> <property name="jmeter.result.jtlName" value="${jmeter.result.jtl.dir}/${ReportName}.jtl" />
<property name="jmeter.result.htmlName" value="${jmeter.result.html.dir}/${ReportName}.html" />
<!-- Diffrent version of Jmeter has its own ant-jmeter.jar,Please input the right versioin -->
<path id="ant.jmeter.classpath">
<pathelement location="${jmeter-home}/extras/ant-jmeter-1.1.1.jar" />
</path>
<!-- use this config to generate html report; if not, may not display Min/Max Time in html-->
<path id="xslt.classpath">
<fileset dir="${jmeter.home}/lib" includes="xalan-2.7.1.jar"/>
<fileset dir="${jmeter.home}/lib" includes="serializer-2.7.1.jar"/>
</path> <target name="report">
<xslt in="${jmeter.result.jtlName}"
out="${jmeter.result.htmlName}" classpathref="xslt.classpath"
style="${jmeter.home}/extras/jmeter-results-detail-report_30.xsl.xml" />
<xslt in="${jmeter.result.jtlName}"
out="${jmeter.result.html.dir}\TestLog.html" classpathref="xslt.classpath"
style="${jmeter.home}/extras/jmeter-results-shanhe-me.xsl" /> <!-- 因为上面生成报告的时候,不会将相关的图片也一起拷贝至目标目录,所以,需要手动拷贝 -->
<copy todir="${jmeter.result.html.dir}">
<fileset dir="${jmeter.home}/extras">
<include name="collapse.png" />
<include name="expand.png" />
</fileset>
</copy>
</target>
</project>

  

推送HTML报告

jenkins执行界面

文件jmx和build只需提交默认提供文件

最终使用者只需要使用excel修改csv用例数据就可以进行进口和性能数据的采集

执行结果

执行结果同前面两个方案一致,不再补充

基于jmeter,jenkins,ANT接口,性能测试框架的更多相关文章

  1. 基于Python的HTTP接口自动化测试框架实现

    今天我们来讲一下基于Python的HTTP接口自动化测试框架的实现,范例如下: 一.测试需求描述 对服务后台一系列的http接口功能测试. 输入:根据接口描述构造不同的参数输入值 输出:XML文件 e ...

  2. 基于Jmeter和Testlink的自动化测试框架研究与实施

    关于测试框架搭建的详细过程,会在另一篇文章中详细介绍:http://www.cnblogs.com/leeboke/p/6145977.html 摘 要 目前基于Jmeter的接口自动化测试框架,大多 ...

  3. Jmeter +Jenkins +Ant 集成发送邮件报告

    [TOC] 一.什么是接口测试? 接口测试是测试系统组件间接口的一种测试.接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点.测试的重点是要检查数据的交换,传递和控制管理过程,以及系 ...

  4. JMeter接口测试系列:Jmeter+jenkins+ant 的自动化构建

    在JMeter接口测试不断深入的过程中,发现可以和jenkins和ant一起搭配进行自动化的构建.下面是jmeter自动化构建的整理笔记. 准备环境 需要本机上确定安装了jmeter.ant和jenk ...

  5. jmeter简单的接口性能测试

    原文转自:https://blog.csdn.net/lovesoo/article/details/78579547 Apache JMeter是一款纯java编写负载功能测试和性能测试开源工具软件 ...

  6. 【Jmeter】利用Jmeter+ant+Jenkins 搭建 接口&性能测试 持续集成平台

    https://www.jianshu.com/p/6ab73a95d53e https://yq.aliyun.com/articles/664329

  7. 使用Jmeter进行http接口性能测试

    在进行网页或应用程序后台接口开发时,一般要及时测试开发的接口能否正确接收和返回数据,对于单次测试,Postman插件是个不错的Http请求模拟工具. 但是Postman只能模拟单客户端的单次请求,而对 ...

  8. 使用Jmeter进行http接口性能测试(转载)

    在进行网页或应用程序后台接口开发时,一般要及时测试开发的接口能否正确接收和返回数据,对于单次测试,Postman插件是个不错的Http请求模拟工具. 但是Postman只能模拟单客户端的单次请求,而对 ...

  9. jmeter+jenkins+ant部署持续集成测试

    原文地址:http://blog.csdn.net/kaluman/article/details/74535495 开头的注意事项: 1.所有的环境变量和代码,都需要使用英文的符号,变量之间都需要英 ...

随机推荐

  1. 仿flash轮播

    <!DOCTYPE html><html> <head> <meta charset="utf-8" /> <title> ...

  2. java面试笔试大汇总

    java面试笔试题大汇总5 JAVA相关基础知识 1.面向对象的特征有哪些方面 1.抽象:2.继承:3.封装:4. 多态性: 2.String是最基本的数据类型吗? 基本数据类型包括byte.int. ...

  3. Asp.net MVC 如何对所有用户输入的字符串字段做Trim处理

    经常需要对用户输入的数据在插入数据库或者判断之前做Trim处理,针对每个ViewModel的字段各自做处理是我们一般的想法.最近调查发现其实也可以一次性实现的. MVC4.6中实现方式 1,实现IMo ...

  4. sed的用法

    1.什么是sed sed命令是一个流线式.非交互式编辑器,可以实现在vi等编辑器中一样的编辑效果.   2.sed的工作原理 模式空间(pattern space) sed一次处理一行文本(或输入), ...

  5. [1] MVC & MVP &MVVM

    开发架构之MVC & MVP & MVVM  

  6. C# 计时器写法

        刚才一个交流群里有人问计时器怎么写,正好我也不太熟,就写了个demo,和大家分享一下这个是参考师傅的写的! 计时器有好多种写法,这里给大家推荐一个性能比较好的,用dispatchertimer ...

  7. Lucence

    Lucene是apache软件基金会4 jakarta项目组的一个子项目,是一个开放源代码的全文检索引擎工具包,但它不是一个完整的全文检索引擎,而是一个全文检索引擎的架构,提供了完整的查询引擎和索引引 ...

  8. jQuery.merge( first, second )返回: Array

    jQuery.merge( first, second )返回: Array描述: 合并两个数组内容到第一个数组.first类型: Array第一个用于合并的数组,其中将会包含合并后的第二个数组的内容 ...

  9. 【Android Developers Training】 53. 打印HTML文档

    注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer ...

  10. 百度搜索效果(jsonp法)

    百度搜索效果(jsonp法): 不需要放在服务器中,本地就可以执行 <!DOCTYPE html> <html> <head> <meta charset=& ...