刚从LoadRunner转到JMeter,对JMeter的各种概念比较懵。在这里记录下。欢迎大家关注我的个人微信号:测试杂货铺。
JMeter的各个功能都是它的组件来完成或实现的,下面来对JMeter的基础组件进行一些简单的入门介绍。
1 TestPlan测试计划
TestPlan是JMeter脚本的根节点,包含了JMeter脚本和场景执行的所有动作。JMeter与LoadRunner的设计结构有所不同,LoadRunner中脚本和场景是分开的,而JMeter中脚本和场景是混在一起的,一个JMX文件既是脚本又是场景。
2 Threads(User)线程组
Threads(User)就是Thread Group线程组,是一组执行相同测试案例操作的用户(线程),简而言之就是JMeter的脚本,等同于LoadRunner的脚本概念。
2 Sampler取样器
Sampler取样器是JMeter中实际执行压力请求操作的组件。除了Flow Control Action取样器外,其他的取样器执行完后都会产生一个或多个结果,这些取样器的结果有很多属性,比如成功、失败、执行时间、数据大小、响应数据等,这些属性可以通过Listener监听器进行查看。
3 Logic Controller逻辑控制器
Logic Controller逻辑控制器用来控制Sampler取样器的执行顺序。其中Transaction Controller事务控制器,可以将多个取样器合并为一个交易事务。
4 Pre Processors前置处理器
Pre Processors前置处理器是在Sampler取样器前执行,可以用来执行参数定义,交易报文拼接等。前置处理器会在它作用域范围内的所有Sampler执行前执行,如果一个ThreadGroup中有多个Sampler时,希望每次迭代时前置处理器只执行一次,可以将前置处理器放在第一个Sampler节点下面作为子节点。
5 Post Processors后置处理器
Post Processors后置处理器在它作用域下的所有的取样器执行结束执行。如果希望后置处理器只对某一个取样器生效,可以将它放在这个取样器下作为子节点。
6 Assertion断言
Assertion断言在它作用域下的所有的Sampler取样器之后执行(断言也在后置处理器只后执行),如果希望后置处理器只对某一个取样器生效,可以将它放在这个取样器下作为子节点。断言相当于LoadRunner里面的检查点的概念。
7 Timer定时器
定时器是在它作用域内的所有取样器执行之前执行生效。定时器最主要的作用就是用来控制测试场景的吞吐量大小,类似于LoadRunner里面的TPS。
8 TestFregment测试片段
TestFregment测试片段的作用是连接Include Controller和Module Controller。
9 ConfigElement配置元件
ConfigElement配置元件用来配置JMeter的各种参数。
10 Listener监听器
Listener监听器展示Sampler取样器的结果,我们可以通过Listener了解测试场景的执行情况。需要注意的是,在JMeter的CLI命令行执行时Listener是不处理Sampler的结果数据的。
如上就是JMeter的各个基础组件的简介。
原文:https://www.cnblogs.com/dblog1/p/10646736.html