jemter学习之一:JMeter体系结构

上一篇 / 下一篇  2017-03-20 16:00:29 / 个人分类:总结

JMeter可以拆分为一个三维空间,X空间分为5个维度,Y空间分为2个维度,Z空间是一个维度;
X1-X5是负载模拟的一个过程,使用这些组件来完成负载的模拟;
Y1:包含的是负载模拟部分,负责模拟用户请求。
Y2:结果验证部分,负责验证结果正确性。
Z:负载结果的收集,实践上只有一个组成部分,监听器,监听器不仅可以放在线程组之内,也可以放在线程组之外。

JMeter基本原理是建立一个线程池,多线程运行取样器产生大量负载,在运行过程中通过断言来验证结果的正确性,通过监听来记录测试结果。如果取样器中有参数化的需求,可以通过X2中的配置元件或者前置处理器来完成,如果有关联需求,可以通过后置处理器来完成,如果要设置运行场景,比如模拟多少用户,运行多长时间,可以设置线程组。如果要模拟并发场景,可以利用定时器来设置,如果我们要控制业务的执行逻辑,比如运行时只登录一次,可以用控制器来完成。

X1:取样器,访问路径:【测试计划】--【线程组】--【Sample】,涵盖了我们常见的各种协议,如http,FTP,JAVA,JMS,LDAP,MAIL,MongoDB、SMTP、SOAP、TCP、JUNIT等。
X1:断言,访问路径:【测试计划】--【断言】断言用来验证结果是否正确,用一个预设的结果与实际结果匹配,匹配到则成功,反之则失败。
X1:监听器,JMeter结果收集程序的设置模式就是监听模式。JMeter的监听器有两个任务:
1、添加结果监听,并且可以保存测试结果到文件,结果数据可以供再次分析使用。
2、展示结果,JMeter可以以表格及图形的形式展现结果,方便分析测试结果。
JMeter监听器共有19个元件,访问路径是:【测试计划】-【监听器】。
【取样器】、【断言】、【监听器】组合在一起就可以帮我们完成发送请求、验证结果及记录结果三项工作
X2:前置处理器,访问路径:【测试计划】-【前置处理器】,在请求发送前需要做一个环境或者参数的准备工作,需要在前置处理器中完成。比如数据库在连接。
X2:配置元件,大量用户需要参数化,可以使用配置元件来完成,还可以用来记录服务器的返回数据,它为取样器提供预备数据,然后由取样器发出请求,取样器的访问路径:【测试计划】--【配置元件】
X2:后置处理器,后置处理器是专门用来对响应数据做处理元件,Jmeter的关联就是通过后置处理器来完成的。 访问路径:【测试计划】-【后置处理器】
【前置处理器】、【配置元件】【后置处理器】都是为取样器提供数据支持的,取样器关注的是业务逻辑。
X3:控制器,JMeter的逻辑控制器,控制器的访问路径:【测试计划】-【线程组】-【逻辑控制器】
X4:定时器,为了真实有效地模拟用户负载,需要模拟这些请求在同一时刻发送,需要定时器的功能,定时器的种类有很多,每一种代表了不同的功能,访问路径:【 测试计划】-【线程组】--【定时器】
X5:线程组,【测试计划】-【Threads(Users)】性能测试需要模拟大量用户负载的情况,线程组就是用来完成这个工作的,在元件中可以设置运行的线程数(一线程一用户),除了设置线程以外,还可以设置运行时长,定时运行。另外第三方插件(JMeter Plugin)的扩展让Jmeter的场景设计更加丰富.

Test Fragment:
就一个辅助的元件,在此节点下几乎可以放置任何Jmeter测试元件,作用为:
1、在脚本开发过程中用来备份元件;
2、TestFragment下的元件可以被模块控制器调用,可以利用它来模块化请求供模块控制器调用。

JMeter测试计划要素:
1、脚本中测试计划只有一个;
2、测试计划中至少有一个线程组;
3、至少要有一个取样器;
4、至少要有一个监听器;

运行逻辑主要是下面三个部分:
1、利用取样器模拟用户请求;如果需要做一些数据及环境的准备,则使用配置管理器,如果需要对响应的数据做处理,使用后置处理器;
2、控制运行;使用线程组来设置运行场景,利用逻辑控制器来控制业务;
3、收集结果,利用断言来验证测试结果,利用监听器来收集显未测试结果;


TAG:

957924462的个人空间 引用 删除 957924462   /   2018-10-09 20:11:15
5
 

评分:0

我来说两句

日历

« 2024-03-14  
     12
3456789
10111213141516
17181920212223
24252627282930
31      

数据统计

  • 访问量: 21282
  • 日志数: 22
  • 建立时间: 2014-02-28
  • 更新时间: 2019-02-20

RSS订阅

Open Toolbar