jmeter初级-逻辑控制器(一)
在jmeter中逻辑控制器,通过在采样器中添加逻辑控制器,控制采样器的执行顺序,也可以对脚本进行控制。Jmeter中的逻辑控制器分为两类:
(1)控制测试计划或者线程组中节点的逻辑执行顺序。
(2)对测试计划或者线程组中的脚本进行分组、方便jmeter统计执行结果以及脚本运行时的控制等。
目前jmeter中包含17种逻辑控制器,其中常用的有:简单控制器、循环控制器、仅一次控制器、如果控制器等。
下面将介绍一下17中逻辑控制器中的简单控制器、循环控制器、仅一次控制器,具体操作如下:
简单控制器:
简单的控制器可以结合采样器进行使用,也可以结合其他的逻辑控制器进行使用。简单控制器可以让我们组织采样器与其他逻辑控制器进行结合,提供一个模块的结构和控制,即是在简单控制器下可以添加采样器以及其他的逻辑控制器。
简单控制器与其他的逻辑控制器结合使用时,简单控制器并不影响其他逻辑控制器的运行和结果。
下面通过简单的项目进行实践:
(1)添加测试计划-->线程组,在线程组下添加简单控制器
(2)在简单控制器下添加响应的请求信息(登录请求)
(3)添加多个简单控制器,在简单控制器中可以添加查看结果树,对控制器下的采样器运行结果进行单独跟踪,方便查看每个采样器的运行结果
(4)由图可看出,简单控制器的作用是将采样器与其他的配置原件组织在一个模块中,方便对某个模块进行添加和删除操作。它没有其他的功能,只提供存储控制作用。
循环控制器:
循环控制器,对循环控制器下面的采样器进行指定运行次数,可以设置相应的数值,让采样器进行循环运行。
在单个线程组中有多个采样器时,如果只需要对某个采样器进行循环时,可以在采样器中添加循环控制器,这样在线程运行时,其他采样器可以只执行一次。
如果同时设置了线程组的循环次数和循环控制器的次数,那么循环控制器下的采样器的循环次数为两个数值相乘的结果。
实践:以下以佛山市场监管项目的测试环境为路径,对循环控制器进行实践操作。(1)在添加了简单控制器的基础上,添加一个循环控制器,循环次数为5次,线程组的循环次数为1次。在循环控制器下添加一个登录请求:
(登录请求需要放在循环控制器节点下,循环次数才启作用)
(1)
运行结果如下:
线程组设置循环次数3次,第一个简单控制器中的请求循环15次,第二个简单控制器的请求循环3次,总共18次:
仅一次控制器:
仅一次控制器,在循环执行中对该控制器下的请求进行执行一次,然后在接下来的循环执行中将会跳过该控制器下的所有请求。
在进行登录的测试中,可以考虑将登录请求放在仅一次控制中,这样登录请求只执行一次。在并发查询时,可能会使用到仅一次控制器,在并发查询时,我们只需要登录请求执行一次即可。Jmeter中的仅一次控制器相当于loadrunner中的init的初始化action。
下面示范仅一次控制器在jmeter中的使用。设定线程组的循环次数为3次,在简单控制器下添加一个仅一次控制器,在仅一次控制器下添加一个登录请求,点击执行按钮,查看执行结果:
(注:仅一次控制器只能放在线程组合循环控制器中,否则其作用不会体现)