首页 > 其他分享 >Jmeter: 逻辑控制器(三)

Jmeter: 逻辑控制器(三)

时间:2024-01-30 21:25:11浏览次数:28  
标签:控制器 模块 逻辑 片段 线程 测试 Jmeter

一 前言

环境
window 10 Jmeter 5.3

二 逻辑控制器

1 简单控制器

如图
image
逻辑控制器没有什么需要输入的地方,直接在合适的地方添加使用即可

作用:

  • 整理分类分组的作用,在使用Jmeter时,可以把你认为可以归类到一起的东西放在一个简单控制器下,就像放在一个文件夹或模块,如上图,看的时候更加层次化,结构化
  • 控制顺序,在简单控制器下的子节点将严格按照显示顺序依次执行,即便是在并发线程的执行中
    如下
    image
    执行结果
    image
    有5个并发线程数,但是 同一个线程,只要在简单控制器下的,执行先后顺序永远是 百度1 百度2 百度3 百度4(中间可能有其它接口 但是这4个的先后顺序不会乱),而非简单控制器下的,有时甚至第2个线程的百度1执行完成后才会执行第1个线程的百度6和百度5

2 模块控制器

模块控制器必须和另外一个组件即测试片段一起使用

2.1 测试片段

测试片段下可以添加的组件和线程组下可添加的东西是一样的
image

  • 测试片段通常配合模块控制器或包括控制器一起使用,测试片段可以位于测试计划下,也可以位于线程组下面
  • 在执行Jmeter时,其中的测试片段自身是不执行的,模块控制器引用了某片段,则会通过执行模块控制器的方式来执行测试片段
  • 有其它博主说,当多人构建Jmeter时,通过测试片段可以分人分模块来管理Jmeter

2.2 模块控制器

在模块控制器中,可以引用测试片段中的内容。通过执行模块控制器,也就执行了其引用的测试片段中的Jmeter脚本

2.3 例子

image
2个测试片段下的接口是一样的即打开百度首页,名字不同而已
image

添加一个线程组,在该线程组下添加测试片段,在测试片段下添加一个接口
image

在次添加一个线程组,该线程组下添加2个模块控制器
image
其中一个模块控制器选择执行片段1 另一个选择执行片段3
image
image

执行 查看结果树
image

可以看到,登录与认证接口属于片段1,这2个接口被执行了

签到接口属于片段3,虽然片段3所在线程组的线程数量为3,但引用片段3的模块控制器所在线程组的线程数为1,最终,该接口也是执行了1次。 可见,片段3本身并没有执行,执行时是按照模块控制器所在线程组配置执行的

3 包括控制器

包括控制器与模块控制器很像,都需要配合测试片段来使用,
区别是,包括控制器引用的是一个外部的jmeter文件,包括控制器会自动引用该文件中的所有测试片段
模块控制器是引用自身所处文件中的测试片段,而且可以选择具体引用哪一个测试片段

例子

image
image
外部的Jmeter文件
测试计划下添加一个线程组 线程组下添加一个测试片段,片段下添加一个接口
image
image

测试计划下直接添加测试片段,片段下添加一个接口
image

测试计划下添加一个线程组,线程组下面添加一个接口
image

执行包括控制器所在的Jmeter
image

可见 Jmeter只会执行外部文件中直接添加到测试计划下的测试片段,非测试片段或者在线程组下的测试片段是不会执行的

标签:控制器,模块,逻辑,片段,线程,测试,Jmeter
From: https://www.cnblogs.com/MyRecords/p/17997485

相关文章

  • Vulkan学习苦旅04:创建设备(逻辑设备VkDevice)
    设备是对物理设备的一种抽象,使我们更加方便地使用它。更准确地说,应该称其为“逻辑设备”,但由于逻辑设备在Vulkan中极为常用,后面几乎所有的API都需要它作为第一个参数,因此在Vulkan中直接简称为设备。1.实例、物理设备与设备的关系在之前的几篇文章中,我们依次创建了实例和物理设......
  • 分布式压测之locust和Jmeter的使用
    受限于单台机器的配置问题,我们在单台机器上达不到一个很高的压测并发数,那这个时候就需要引入分布式压测分布式压测原理:一般通过局域网把不同测试计算机链接到一起,达到测试共享、分散操作、集中管理的目的。选择一台作为调度机(MASTER),其他机器作为执行机(SLAVE)执行完成执行机会......
  • 软件测试学习笔记丨JMeter_实现分组并发
    Jmeter_实现分组并发实现思路:线程数和时间进行参数化,使用命令模式进行执行,再添加报告进行每次展示。执行时可以使用linux定时器或者脚本调用。命令执行命令启动jmeter命令:jmeter-Jpara1=4-Jpara2=15-n-tpreClassMenu_1117.jmx-le:/res/res1.jtl-e-oe:/res/res/......
  • R语言非线性方程数值分析生物降解、植物生长数据:多项式、渐近回归、负指数方程、幂函
    全文链接:https://tecdat.cn/?p=33742原文出处:拓端数据部落公众号简介在选择最佳拟合实验数据的方程时,可能需要一些经验。当我们没有文献信息时该怎么办?我们建立模型的方法通常是经验主义的。也就是说,我们观察过程,绘制数据并注意到它们遵循一定的模式。例如,我们的客户可能观察......
  • Dubbo之服务禁用启用逻辑
    一、简介本文主要介绍dubbo里面和服务disable相关的源码流程,方便以后出问题快速定位原因;之前是一套注册中心zk集群,dubbo版本2.7.3,dubbo-admin启用禁用没有问题,现在升级dubbo版本为2.7.22,zk集群搞了2套,发现disable和enable没用了,禁用了依然可以调用,遂研究了下关于disable的相关......
  • 【离散数学】第一章 命题逻辑
    第一章命题逻辑真值"地球是行星"这句话(命题)是正确的,我们称它的真值为真,通常记作T或者1;这句话也被称作真命题。"2是无理数"这句话(命题)是错误的的,我们称它的真值为假,通常记作F或者0;这句话也被称作假命题。1.命题的真值一定是唯一的;如果一句话不确定真假或者有时候真有时候假,那这句话......
  • Jmeter 之 forEach控制器
    1添加方法: 线程组右键->添加->逻辑控制器->ForEach控制器 2作用:可以更方便JMeter后置处理器提取出来的多组数据,也可以定义具有特定规则的数据,用ForEach读取3各个组件介绍:输入变量前缀:变量的前缀开始循环字段:要读取的变量后缀......
  • Jmeter 响应断言你知道多少?
    1断言各组件介绍Applyto:同上测试字段:*响应文本:响应体*响应代码:响应状态码*响应信息:状态码的消息*响应头:顾名思义就是响应头*请求头:顾名思义就是请求头*URL样本:URL*文档(文本):响应体*忽略状态:勾选后,JMeter会忽视取样器本身的报错,把测试结果完全交给断言。......
  • 为什么使用交叉熵作为逻辑回归的损失函数?
    整理以前学习过程中的疑问。为什么使用交叉熵作为逻辑回归的损失函数?频率学派的一种估计参数的方法,这种方法适合分类回归任务。必须要提一下的是,频率学派将参数\(\theta\)​看作一个未知待估计的常数,其目标是使用带一定性质的估计方法求出。似然函数就是其中的一种方法。A......
  • Jmeter:逻辑控制器(二)
    一前言环境:Jmeter5.3window10本篇继续记录逻辑控制器二逻辑控制器1吞吐控制器按照官方的说法,此控制器的命名并不正确,因为它并不直接控制吞吐量该控制器用来控制其子节点的执行的频率,有两种模式执行百分比执行次数未勾选peruser的情况下,假设线程组那里配置循......