JMeter之事务控制器

JMeter之事务控制器

什么是事务?

性能测试的结果统计时我们一定会关注 TPSTPS 代表每秒的事务数,每个事务对应的是我们的请求。虽然 Jmeter 能够帮我们把每个请求统计成一个事务,但有时候我们希望多个操作统计成一个事务,Jmeter 也考虑到了这种需求,我们可以通过逻辑控制器中的事务控制器来完成。

逻辑控制器

逻辑控制器,顾名思义就是控制程序的逻辑了,JMeter 逻辑控制器有很多种,比如循环控制器、随机控制器等。结合实例我们需要的是对事务的定义,所以选择事务控制器。

事务控制器

如下图所示,我们先添加一个事务控制器
在这里插入图片描述

事务控制器是位于逻辑控制器组件下面的一个元件,我们来看一下下方图中的参数说明:在这里插入图片描述

  • 名称:可以随意设置,最好有业务意义。
  • 注释:可以随意设置,可以为空。
  • Generate parent sample:如果是事务控制器下方有多个取样器(请求),勾选它,那么在“查看结果树”中我们不仅可以看到事务控制器,还可以看到每个取样器;并且事务控制器定义的事务是否成功是取决于子事务是否都成功,其中一个子事务失败,即代表整个事务都失败。

如下图,我们故意让 登录的 子事务失败(这里我故意输入错误的登录密码,然后断言响应状态码为200),我们可以看到整个事务都是失败的。

在这里插入图片描述

下图中,则表示整个事务都成功了。
在这里插入图片描述

JMeter 集合点

性能测试中需要模拟大量用户并发,集合点能够尽量让虚拟用户同一时刻发送请求,在 JMeter 中集合点是通过定时器来完成的。

定时器

JMeter 定时器用来控制取样器的执行时机,有固定定时器、随机定时器。回到实例,这里我们选择同步定时器来进行控制。

同步定时器

如下图所示,同步定时器是用来保证我们的取样器在同一时刻向服务器发起负载,考虑到线程运行时间的快慢与场景需要,也提供了同步线程数量的设置。
在这里插入图片描述

参数说明如下:

  • 名称:可以随意设置,最好有业务意义。
  • 注释:可以随意设置,可以为空。
  • 设置同步线程数量,我们在运行测试时,每一个线程的运行时间可能不一样,想要要所有都集合在一起可能会等待较长的时间,这种情况下我们可以先让一部分集合完毕的线程运行起来。另外有些场景不一样要等待所有的线程集合完毕,只需要部分线程保证同步就可以了,基于这些要求设置这个选项即可。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/100675.html原文链接:https://javaforall.net

(0)
上一篇 2021年7月13日 下午7:00
下一篇 2021年7月13日 下午8:00


相关推荐

  • 一次认识了Cursor

    一次认识了Cursor

    2026年3月13日
    2
  • expr_const在函数前与函数后的区别

    expr_const在函数前与函数后的区别const修饰常量,但是const并未区分编译时常量和运行时常量,而constexpr则只能是编译时常量,在C++11中提出。这篇文章,将详细讲解constexpr。一、常量表达式常量表达式(constexpression):指值不会改变并且在编译阶段过程就能得到计算结果的表达式。以下两种是常量表达式:constintmaxSize=10;constintlimit=maxSize+1;以下两种不是常量表达式:intstaff_size=27;cons..

    2026年4月18日
    6
  • JMESPath_英语语法整理

    JMESPath_英语语法整理前言JMESPath是JSON的查询语言。您可以从JSON文档中提取和转换元素官方文档:https://jmespath.org/tutorial.html基本表达式JMESPath用的最多的

    2022年7月28日
    12
  • FastJson TypeReference 缓存「建议收藏」

    FastJson TypeReference 缓存「建议收藏」一直用FastJson做rest接口的序列化,FastJson对泛型的支持也非常好。经过一段时间使用后发现不定时的会报JsonObjectcan’tcovertto****的错误,但是重启之后就好了。排查过程不赘述,直接上代码演示StringitemJsonStr="{\"models\":{\"_defaultModel\":{\"id\":824,\&q

    2022年6月18日
    56
  • docker导出所有镜像_怎么把docker镜像复制出来

    docker导出所有镜像_怎么把docker镜像复制出来背景由于工作需要,要一次性导出机器上全部的镜像。导出命令:dockersave$(dockerimages–format'{{.Repository}}:{{.Tag}}’)-oallinone.tar

    2025年9月19日
    6
  • vs2019键盘钩子_低级键盘钩子回调函数「建议收藏」

    vs2019键盘钩子_低级键盘钩子回调函数「建议收藏」与SetWindowsHookEx函数一起使用的应用程序定义的或库定义的回调函数。每当一个新的键盘输入事件即将被提交到线程输入队列中时,系统都会调用这个函数。当调用此回调函数以响应键状态的更改时,将在更新键的异步状态之前调用回调函数。因此,不能通过在回调函数中调用GetAsyncKeyState来确定键的异步状态。HOOKPROC类型定义了指向这个回调函数的指针。LowLevelKeyboard…

    2022年6月1日
    55

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号