事务管理器:一般用来监测同一事务下多个接口的请求响应时间;所有方法都执行通过才算整个事务成功;同一个事务中参数调用较方便
Transaction Controller
https://blog.csdn.net/duzilonglove/article/details/79621399
jmeter中逻辑控制器(Logic Controllers)的作用域只对其子节点的sampler有效,作用是控制采样器的执行顺序。
jmeter提供了17种逻辑控制器,它们各个功能都不尽相同,大概可以分为2种使用类型:
①.控制测试计划执行过程中节点的逻辑执行顺序,如:Loop Controller(循环控制器)、If Controller(如果if控制器)等;
②.对测试计划中的脚本进行分组,方便JMeter统计执行结果以及进行脚本的运行时控制等,如:Throughput Controller(吞吐量控制器)、Transaction Controller(事务控制器)等
ForEach控制器
input Variable Prefix:输入变量前缀
Output variable name:输出变量名称,提供给其它控件引用
Start index for loop(exclusive):循环开始的索引(默认从0开始,如果填写是2,实际是从2+1个开始执行)
End index for loop(inclusive):循环结束的索引
Add”_”before number:输入变量名称中是否使用“_”进行间隔。
“左开右闭”,即(循环开始的索引,循环结束的索引]
Switch Controller
Switch Value:设置你要访问的请求索引(从0开始的)或者直接设置访问的请求名称。
IF控制器
作用:允许用户控制该控制器下面的取样器/控制器是否执行该节点下的子节点;
条件(默认JavaScript)(Condition(default javascript)):使用JavaScript的函数或变量进行评估判断条件为真或假
条件解释为变量表达式(interpret condition as variable expression):如果勾选该项,那么变量表达式会进行求值,并与“ture”或“false”进行比较,而无需使用JavaScript
对所有子条件执行(evaluate for all children):如果勾选该项,则该controller在没一个子节点执行时执行一次;
默认情况下,该控制器可以对包含在其下面的所有可运行的元素进行执行,但只在入口执行一次
循环控制器
循环该控制器下下面字节点的次数。
吞吐量控制器
用来控制该控制器下面元件的执行次数,与控制吞吐量的功能无关
Throughput Contoller有两种模式:Total Executions 和Percent Executions。
Total Executions:吞吐量的次数;
当勾选Per User时:
线程数*循环次数>=线程数*吞吐量时,Total Executions模式的执行次数=线程数*吞吐量。
当线程数*循环次数<线程数*吞吐量时,Total Executions模式的执行次数=当线程数*循环次数。
当不勾选Per User时:
线程数*循环次数<=吞吐量时,Total Executions模式的执行次数=线程数*循环次数。
当线程数*循环次数>吞吐量时,Total Executions模式的执行次数=吞吐量。
Percent Executions:吞吐量占的百分比
无论Per User是否勾选,按Percent Executions模式的执行次数都不受Per User影响,Percent Executions模式的执行次数=线程数*循环次数*吞吐量%。
PS:循环次数=线程组循环次数*循环控制器循环次数。