jmeter 最佳实践6条


线程数量

一般来说单节点,jmeter可以有效地运行线程的最大数量是300。硬件性能以及测试计划设计都将影响JMETER有效运行的线程数量。所以如果你的性能测试需求大量并发或者涉及大量线程使用,那么可采用以下两种解决方案。


1. 分布式测试,采用slave-node,将测试分配到不同节点主机运行。

2. 将测试数据评估,采用推算的方式来评估大量测试可能会遇到问题,例如,从50线程,到100线程,再到200线程,结合测试数据,查看服务器性能变化,推算可能会存在的瓶颈。

在命令行下运行测试


永远不要在GUI界面运行任何压力测试!


那么GUI界面下都干些什么呢?

1. debugging,有时候你可能需要用一些结果查看器,查看返回的请求,或者你用正则匹配器时,来查看获取的结果是否正确等。

2. record test,我必须要承认,录制脚本要比直接写脚本快的多,也方便的多。

3. development,有时我们或许要对脚本进行一些定制开发,当我们需要查看结果报告时候,GUI仍然是不错的选择,不过越来越多的第三方插件,可以直接生成测试报告。

Jmeter在GUI模式下并不是被设计成一个高负载的模式,换句话其实jmeter性能真的不怎么样,简单易用以及第三方插件工具较多,才是jmeter被广泛应用的原因,如果你追求高性能的工具,推荐使用gatling。

禁用listener


因为大量使用监听器会消耗大量的内存,将导致GUI界面卡死或jmeter运行内存不足。

当然,安全的使用‘结果树’listener来查看测试结果的正确性还是有必要的。

所以无论是在命令行模式还是GUI模式,我们在运行压力测试时,将无用的listener移除掉。

使用最新版本的jmeter



jmeter仍然存在各种各样的问题,所以一直在发布新的版本,使用最新版本可能会修复你的一些bug以及改进工具性能。

使用断言


jemter的各种断言,帮助我们验证从服务端返回的响应是否正确。

加入think time


真实的场景中,用户不可能不停歇的点完这个就去点那个按钮,所以考虑到真实用户的行为,我们要在不同动作间,加入think time来模拟真实用户的行为,这样才能更准确模拟性能测试场景。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容