过去长期用loadrunner做性能測试。可是渐渐认为有些麻烦了:

1.仅仅能执行在windows环境下,而生产环境差点儿清一色的linux。为了在同一网段做性能或压力測试,还须要单独部署一套windowsserver,比較浪费。

2.loadrunner和浏览器版本号绑定太严格了,比方loadrunner 11。最高就支持到ie9,有时候系统打补丁自己主动把浏览器版本号升上去了。就无法录制脚本了。

3.版权问题也不容忽视,crack带来的各种风险也是存在的。

于是尝试了一下JMeter,发现还是相当好用的。在多数web性能測试中。功能也足够了。

总结一下最经常使用的操作,帮助刚開始学习的人高速上手。

安装:

Jmeter的安装实在是太省心了,就是解压缩就可以。Windows版本号一般是zip包,linux版本号一般是tar包,仅仅要系统上有JDK,直接解开就能够启动了。

(\bin\jmeter.bat、\bin\jmeter.sh),启动后是这个界面:

录制脚本:

和loadrunner的主动启动被录制应用不同,Jmeter是启动一个代理server,由浏览器设置去使用这个代理server。以完毕web请求的监控和录制。

所以须要在工作台右键、加入——非測试元件——http代理server。

重点是为代理server设置一个和现有应用不冲突的port。然后在浏览器里设置使用代理server,port就是上述设定好的port。

点击启动button,代理server就開始工作了。

此时通过浏览器訪问web网站,所发出的请求就会被记录下来。

可是假设如今就開始录制的话,会在上面的列表中列出一大堆。显得非常杂乱。所以先在測试计划中加入一个线程组。

加入线程组不仅仅为了看着方便,还有几个作用:

线程组相当于loadrunner中的一个独立脚本。多个脚本能够组成一个測试场景。

模拟多用户时。也是以线程组为单位进行数量设定和调度设定的。

如上图中,对这个线程组採用模拟10个并发用户循环5次运行性能測试。

运行结果要能看到反馈才行。所以在測试计划中加入监听器。经常使用的监听器有SummaryReport、聚合报告(这两个很接近。用一个就可以)、察看结果树等。

也有一些图形化的监听器用于各自须要的场合。

这样,一个主要的測试流程(录制、測试、报告)就完毕了。再介绍一下參数化。这也是在性能測试中最经常使用的,比方各种查询。所谓參数化就是希望模拟用户操作的时候採用不同的參数数值。如模拟用户检索就希望每一个虚拟用户发出不同的检索请求。这样才更能模拟实际情况。

此时须要先准备一个检索词列表到一个csv文件里。然后加入一个配置元件——CSVData Set Config,然后指定这个文件路径,并给每列数据指定一个名称。

命名之后,就能够在须要的地方。用变量名替换原有的固定字符串了。

当模拟多用户时。系统会用csv文件中的内容替换这个变量。

有些时候系统须要session信息来验证某些状态,假设没有发出的话会导致一些错误。这个时候加入——配置元件——HTTPCookie管理器就能够了。

常见步骤就是这些,通过调节參数设置。能够更精细地完毕多种測试任务。这就须要在实践中逐步积累经验了。

JMeter高速应用的更多相关文章

  1. (转)学习使用Jmeter做压力测试(一)--压力测试基本概念

    一.性能测试的概念 性能测试是通过自动化的测试工具模拟多种正常峰值及异常负载条件来对系统的各项性能指标进行测试.负载测试和压力测试都属于性能测试,两者可以结合进行. 通过负载测试,确定在各种工作负载下 ...

  2. JMeter学习-009-JMeter 后置处理器实例之 - 正则表达式提取器(二)多参数获取

    前文简述了通过后置处理器 - 正则表达式提取器 获取 HTTP请求 响应结果中的特定数据,未看过的亲,敬请参阅 JMeter学习-008-JMeter 后置处理器实例之 - 正则表达式提取器(一). ...

  3. JMeter在里面Json数据处理方法

    http://eclipsesource.com/blogs/2014/06/12/parsing-json-responses-with-jmeter/ Json作为一种数据交换格式在网络开发.特别 ...

  4. 使用Jmeter至WebService压力测试

    使用Jmeter至WebService压力测试   目中我们使用了Jmeter对webservice进行了压力測试,Apache JMeter是Apache组织开发的基于Java的压力測试工具.用于对 ...

  5. Jmeter函数引用和函数重定向

    在jmeter中的[选项]中选择[函数助手对话框]---这些函数可以高速有效的帮助我们开展自动化编写与校验!!!!!! 如图: 重点!!!本章的侧重点不讲函数的具体使用,函数具体的使用与java类似, ...

  6. 性能测试—认识JMeter(三)

    <零成本web性能测试>第二章 JMeter基础知识总结和自己的理解 一.JMeter百度词条概念 Apache JMeter是Apache组织开发的基于Java的压力测试工具.用于对软件 ...

  7. 性能测试—认识JMeter(一)

     性能测试—认识JMeter(一) <零成本web性能测试>第二章 JMeter基础知识总结和自己的理解 一.JMeter百度词条概念 Apache JMeter是Apache组织开发的基 ...

  8. 【转】学习使用Jmeter做压力测试(一)--压力测试基本概念

    一.性能测试的概念 性能测试是通过自动化的测试工具模拟多种正常峰值及异常负载条件来对系统的各项性能指标进行测试.负载测试和压力测试都属于性能测试,两者可以结合进行. 通过负载测试,确定在各种工作负载下 ...

  9. Jmeter函数引用和函数重定向【转】

    在jmeter中的[选项]中选择[函数助手对话框]---这些函数可以高速有效的帮助我们开展自动化编写与校验!!!!!! 如图: 重点!!!本章的侧重点不讲函数的具体使用,函数具体的使用与java类似, ...

随机推荐

  1. [BZOJ 3326] 数数

    Link: BZOJ 3326 传送门 Solution: 明显是一道数位$dp$的题目,就是递推式复杂了点 先要求出一个数$\bar{n}$向添加一位后的$\bar{np}$的转化关系 令$res[ ...

  2. 【搜索】【约数个数定理】[HAOI2007]反素数ant

    对于任何正整数x,其约数的个数记作g(x).例如g(1)=1.g(6)=4.如果某个正整数x满足:g(x)>g(i) 0<i<x,则称x为反质数. 所以,n以内的反质数即为不超过n的 ...

  3. Leveldb源码解析之Bloom Filter

    Bloom Filter,即布隆过滤器,是一种空间效率很高的随机数据结构. 原理:开辟m个bit位数组的空间,并全部置零,使用k个哈希函数将元素映射到数组中,相应位置1.如下图,元素K通过哈希函数h1 ...

  4. Composer与laravel安装

    首先,要知道Composer是什么? Composer是PHP中用来管理依赖(dependency)关系的工具.你可以在自己的项目中声明所依赖的外部工具库(libraries),Composer会帮你 ...

  5. cas服务器源码阅读笔记,对标博客

    对标源码阅读博客:http://www.cnblogs.com/jiuzhongguo/category/375405.html 在CAS中很多地方使用了策略模式,那么根据什么方式来确定使用哪种策略呢 ...

  6. [转]在Sql Server中将字符串分割成表格数据示例

    本文转自:http://www.lmwlove.com/ac/ID718 比如我们有一个字符串 ) select @appName ='UserID=admin,Account=ABC' 然后我们要以 ...

  7. linux下安装oracle需要的配置

    1.检查系统包安装情况 rpm -qa|grep binutils rpm -ivh sysstat-7.0.2.rpm rpm -ivh binutils-2.17.50.0.6-14.el5.*. ...

  8. Vue侦听器watch

    虽然计算属性在大多数情况下更合适,但有时也需要一个自定义的侦听器.这就是为什么 Vue 通过 watch 选项提供了一个更通用的方法,来响应数据的变化.当需要在数据变化时执行异步或开销较大的操作时,这 ...

  9. matplotlib绘制常用统计图

    常见统计图:单条折线图.多条折线图.直方图.柱状图.饼状图 #!/usr/bin/python # -*- coding: utf-8 -*- import numpy as np import ma ...

  10. 【Web】Django OAuth invalid_grant error

    This can happen if the code is expired. They expire pretty quickly by default. You can look up your ...