什么是计时器?
默认情况下,JMeter发送请求而不会在每个请求之间暂停 。 在这种情况下,JMeter可能会在很短的时间内发出太多请求,从而压倒您的测试服务器。
定时器允许JMeter在线程发出的每个请求之间延迟 。 计时器可以解决服务器过载问题。
在现实生活中,访问者不会同时到达网站,而是以不同的时间间隔到达网站。 因此,Timer将有助于模拟实时行为。
- JMeter性能测试工具快速入门教程-目录 https://www.jianshu.com/p/7b1a3346dc0f
常量计时器
常量计时器会在每个用户请求延迟相同的时间。
高斯随机定时器:
高斯随机定时器将每个用户请求延迟一段随机时间。
属性 | 描述 |
---|---|
Name | 计时器的描述性名称 |
Deviations (milliseconds) | 偏差 |
Constant Delay Offset (milliseconds) | 恒定延迟偏移(毫秒) |
均匀随机定时器:
均匀随机定时器将每个用户请求延迟一段随机时间。
属性 | 描述 |
---|---|
Name | 计时器的描述性名称 |
Random Delay Maximum | 随机延迟最大值 |
Constant Delay Offset (milliseconds) | 恒定延迟偏移(毫秒) |
Constant Delay Offset (milliseconds) | 附加值,以毫秒为单位 |
总延迟是随机值和偏移值之和。
BeanShell计时器
BeanShell Timer可用于在每个用户请求之间生成延迟时间。
BSF计时器
BSF计时器可用于使用BSF脚本语言在每个用户请求之间生成延迟。
JSR223定时器
JSR223 Timer可用于使用JSR223脚本语言在每个用户请求之间生成延迟
如何使用常量计时器
在此示例中,您将使用Constant Timer在用户请求google.com之间设置固定延迟 。
让我们从一个简单的测试脚本开始
- JMeter向http://www.google.com创建一个用户请求100次
- 每个用户请求之间的延迟为5000毫秒
以下是此实际示例的路线图 :
参考资料
- JMeter性能测试工具快速入门教程-目录 https://www.jianshu.com/p/7b1a3346dc0f
- python测试开发项目实战-目录
- python工具书籍下载-持续更新
- python 3.7极速入门教程 - 目录
- 讨论qq群630011153 144081101
- 原文地址
- 本文涉及的python测试开发库 谢谢点赞!
- 本文相关海量书籍下载
- https://www.tutorialspoint.com/sqoop/sqoop_installation.htm
- https://sqoop.apache.org/docs/1.4.7/SqoopUserGuide.html
- https://www.softwaretestinghelp.com/top-4-etl-testing-tools/
准备
右键单击测试计划并添加一个新线程组: 添加 - > 线程(用户) - > 线程组
在Thread Group控制面板中,输入Thread Properties,如下所示
此设置允许JMeter在100次内向http://www.google.com创建一个用户请求
添加JMeter元素:添加HTTP请求默认值;添加HTTP请求
添加常量计时器:右键单击“ 线程组” - >“ 计时器” - >“ 常量计时器” 配置5000毫秒的线程延迟
在表中添加视图结果:查看表中的结果以表格格式显示测试结果。右键单击Add - > Listener - > View Result in Table
运行:准备好运行测试时,单击菜单栏上的“运行”按钮或短按Ctrl + R.
这是此测试的结果
例如,在上图中,让我们分析样本2
开始时间是 22:05:01.866
Sample 2采样时间为172毫秒
恒定时器 :5000 ms(已配置)
该样品的结束时间是 = 22:05:01.866 + 172 + 5000 = 22:05:07.038
因此样本22:05:07.039
每个样本的延迟为5000毫秒
如果更改常量计时器为零 ,您将看到结果已更改
让我们分析样本1
开始时间是22:17:39.141
Sample 2采样时间为为370毫秒
恒定时器 :0 ms(已配置)
该样本的结束时间 = 22:17:39.141+ 370 + 0 = 22:17:39.511
因此样本2应该在22:17:39.512时开始 (如上图所示)
故障排除:
如果您在运行上述方案时遇到问题...请执行以下操作
- 检查您是否通过代理连接到互联网。 如果是,请删除代理。
- 打开JMeter的新实例
- 在Jmeter中打开TimerTestPlan.jmx
- 双击线程组 - >查看表中的结果
- 运行测试