我正在制作我的JMeter测试套件,它在我的本地机器上运行得很好。
例如,我有一个简单的测试套件,它执行:
1.登录
1.获取用户最近的消息
在我的报告中,我看到如果我增加负载,平均响应时间会成比例地增加。
例如,当我有50个用户时,它可能从0.5秒开始,当我有200个用户时,它可能会增加到3.5秒(平均响应时间)。
但是,我不太清楚的是:假设我增加了负载并添加了另外500 - 600个用户,平均响应时间将增加到10 - 20,这是服务器速度慢的指标,还是我的计算机无法产生足够的负载(例如,带宽、CPU或套接字的限制)?我应该看什么才能清楚地说,好吧,我可以在这台机器上产生X个并发用户负载,如果我需要更多,我需要向测试云添加更多机器(或转到云)
1条答案
按热度按时间j91ykkif1#
默认情况下,JMeter不太适合运行大规模测试,它使用1 GB of RAM maximum,如果达到这个限制,JMeter要么由于garbage collection过多而无法进行更高的负载,要么会崩溃。
查看9 Easy Solutions for a JMeter Load Test “Out of Memory” Failure了解JMeter性能和调优技巧。
一旦您确保JMeter被正确调优,您就可以从CPU、RAM、网络和磁盘IO使用内置的操作系统工具或JMeter PerfMon Plugin。一旦任何监控指标开始超过,即90%这将意味着JMeter无法进行更高的负载,因为您的机器没有足够的资源。在这种情况下,如果用户数为不够,你需要切换到Distributed Testing(不一定在云中,机器也可以是本地的)