JMeter负载测试:调整用户数与请求间隔能否实现等效效果?
分析两个测试场景的等效性
答案是从整体请求负载和时间维度的请求密度来看,这两个配置可以达到相同的测试效果,下面具体拆解验证:
文件发送请求对比
- 原场景:4000名用户,每半小时发一次文件。24小时共有
24*2=48个半小时窗口,总文件请求量为4000*48=192000次;每半小时的瞬时文件请求量是4000次。 - 配置场景:2000名用户,每15分钟发一次文件。24小时共有
24*4=96个15分钟窗口,总文件请求量为2000*96=192000次;每半小时内会出现两次15分钟窗口,累计瞬时请求量是2000*2=4000次,和原场景每半小时的请求量持平。
Ping请求对比
- 原场景:每5秒发一次ping。24小时总秒数为
24*3600=86400秒,单用户ping次数为86400/5=17280次,总ping请求量为4000*17280=69120000次;每5秒的瞬时ping请求量是4000次。 - 配置场景:每2.5秒发一次ping。单用户ping次数为
86400/2.5=34560次,总ping请求量为2000*34560=69120000次;每5秒内会出现两次2.5秒窗口,累计瞬时请求量是2000*2=4000次,和原场景每5秒的请求量一致。
需要注意的例外情况
如果你的测试目标特别关注单时间点的并发用户数峰值(比如想验证服务器应对4000用户同时发起文件请求的能力),那配置场景的单时间点并发只有2000,和原场景的4000峰值不匹配,这种情况下就无法达到相同效果。但如果是测试服务器的长期负载、整体请求频率压力,两个场景是完全等效的。
内容的提问来源于stack exchange,提问作者Limbo
相关产品推荐
相关产品推荐

