JMeter负载测试所需测试账号总数计算公式正确性验证
负载测试账号数量计算验证与调整
原公式正确性验证
在每个用户每次迭代使用不同账号的场景下,原公式是正确的,推导逻辑如下:
- 单个并发用户在测试时长内可完成的迭代次数:
测试时长 / 单用户每次迭代耗时 = 600 / 2 = 300次 - 100个并发用户的总迭代次数:
单用户迭代次数 × 并发用户数 = 300 × 100 = 30000次 - 由于每次迭代都需要使用全新账号(无论哪个用户执行),总迭代次数即为所需账号总数,与原公式计算结果完全一致。
特殊场景下的公式调整
如果测试场景存在以下变化,需要针对性调整公式:
- 场景1:账号可跨用户复用,但同一用户不能重复使用自身用过的账号
这种情况本质上仍要求每个用户的每一次迭代都使用新账号,总账号数仍等于总迭代次数,原公式依然适用。 - 场景2:账号使用后可被所有用户重复使用(仅要求单次迭代内账号唯一)
此时只需保证同一时间内的并发用户使用不同账号,所需账号数等于并发用户数(100),无需使用原公式。 - 场景3:存在账号回收延迟(如迭代结束后账号需等待N秒才能再次使用)
需考虑回收延迟对账号复用的影响,调整后的公式为:所需账号总数 = 并发用户数 × ceil(单用户迭代耗时 / (单用户迭代耗时 + 账号回收延迟)) × (测试时长 / 单用户迭代耗时)
例如若账号回收延迟为1秒,计算得:100 × ceil(2/(2+1)) × 300 = 100 × 1 × 300 = 30000;若延迟大于迭代耗时,最终所需账号数会相应增加。
内容的提问来源于stack exchange,提问作者Giri
相关产品推荐
相关产品推荐

