性能测试工具 jmeter 参数设置问题求教?希望有懂得大佬教一下。提前谢谢了。

一只咸鱼 · 2021年05月21日 · 最后由 一只咸鱼 回复于 2021年05月31日 · 3819 次阅读

最近调研了 jmeter 的使用,但是对于线程数、Ramp-up period、循环次数三个参数的设置还是不太会。
首先说下我的业务场景,一个 post 数据上传接口,模拟 50 个用户同时请求接口,查看并发请求下响应时间是否会过长。
通过该文章:https://my.oschina.net/u/4640373/blog/4551733
1.执行第一次数据采样,得到吞吐率和平均响应时间:

吞吐率=4.6≈5,平均响应时间:t=0.2 秒;
2.假设线程 N=10,估计的吞吐率=5, 那么估计的理想 ramp-up period (T)= 10/5 = 2 秒
3.现在计算循环次数 A。由于我们要考虑在第一个线程结束的时候,确保最后一个线程能启动,那么至少要大于一个值,这个值定位 S=T-T/N=2-2/10=1.8.
当时间到 S=(T-T/N)时,最后一个线程启动,若要使所有线程同时运作,则需要在最后一个线程启动的时候第一个线程仍未关闭,为达到这个要求,需满足 A > S/t
A>1.8/0.2=9 次 A>(T-T/N)/t
4.那么我们的测试方案如下:

😨 问题:
1、执行第一次数据采样时,设置的三个参数值分别为什么 50 ? 不填? 1?这一点我不太懂?

共收到 10 条回复 时间 点赞

Ramp-up period 是多长时间加载到最大并发数,如果你最终结果就是测试 50 个并发下的 tps 的怎么样,其实跟 Ramp-up period 这个值没多大关系,这个值设置的长一些 tps 在会在增长的过程中比较平缓,设置的小一些的话 tps 在增长的过程中可能会出现上下抖动的不平稳现象,但是都不影响 50 并发下 tps 的峰值

感觉考虑的有点复杂,你不如搞一个集合点

http://www.zhongxin.website/article/e64c544a.html#more

Ramp-Up 时间(秒):启动所有线程数的时间。在这个时间内,线程只要启动了,就去执行请求,是广义的并发

例如:当「Ramp-Up」设置为 2,「线程数」设置为 10:在 2 秒钟结束,10 个用户都启动好。不保证在 2 秒钟过程中,到底是怎么启动的。

咖啡咖 回复

多谢回复。

恒温 回复

这方面我再去研究下。多谢大佬回复。

测试游记 回复

好的 多谢回复

简单回复,保持活跃

同步定时器了解一下,这场景设计太复杂了 ,而且不一定能正常满足你的需求

Tester_谜城 回复

多谢
我调研下

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册