jmeter - JMeter 计时器在请求返回后启动吗?如果不是,那在文档中的什么位置?
问题描述
3.4 Timers中的JMeter 文档没有定义每个计时器的开始和结束:
如果您选择将多个计时器添加到线程组,JMeter 将获取计时器的总和并在执行计时器适用的采样器之前暂停该时间量。
在这个描述中,不清楚定时器是在采样器请求被触发时启动还是定时器在采样器请求返回响应时启动。
Constant Timer的Apache JMeter 文档将 Constant Timer定义为:
如果您想让每个线程在请求之间暂停相同的时间,请使用此计时器。
这也使“请求之间”的含义模棱两可——是在请求的开始之间,还是在一个请求的结束和下一个请求的开始之间?
在阅读中篇文章Performance Testing with a Think Time 时,作者 Malith Jayasinghe 将思考时间定义为:
...“思考时间”在进行性能测试时起着重要作用。它被定义为一个请求完成和下一个请求开始之间的时间。
关于思考时间的定义,这令人耳目一新,但我找不到任何证据证明这就是 JMeter 在文档中的工作方式。
关于思考时间/等待时间是从请求被触发的那一刻开始还是从请求返回的那一刻开始的权威文档在哪里?
解决方案
正如有关JMeter Timers的文档所说:
计时器将导致 JMeter在其范围内的每个采样器之前延迟一定的时间。
因此,如果您向采样器添加任何计时器 - JMeter 将在启动此采样器之前等待。
如果您在与采样器组相同的范围内添加计时器- JMeter 将在每个采样器之前等待指定的时间。
另外,请注意:
默认情况下,JMeter 线程按顺序执行采样器而不会暂停。
推荐阅读
- java - Java ServerSocket 无法从本地网络连接
- javascript - 按 javascript 对象中键的值对对象进行分组
- performance - 为什么我的 MPI 并行 DO 循环第二次更快?
- azure - 在 Azure Pipelines 的 ARM 部署上使用 overrideParameters 时的 InvalidDeploymentParameterKey
- r - 在读入和合并多文件时添加变量
- php - Laravel 基于 belongsTo 关系中的选择更新字段
- rust - 访问 par_iter_mut 内集合中不同索引的字段
- javascript - 如何从 Javascript 中的 ECG 信号中获取 BPM 和 RR 峰值?
- node.js - 从目录加载随机文件
- debugging - 如何在 GNATSTUDIO 2020 中删除同一行上的多个断点