JMeter—常见问题(十四)

时间:2023-12-28 21:53:50

参考《全栈性能测试修炼宝典JMeter实战》第十五章 JMeter常见问题

1、无法产生负载
  注意检查各元件是否时禁用状态。JMeter在运行时是以数形式加载各种元件的,如果父节点被禁用,那么其下的所有子节点将不会运行。虽然下面的子节点没有被禁用,但运行时根本无法产生负载,但JMeter不会报错。

2、做接口测试
  常见的有HTTP协议、Socket协议、WebSocket协议、Soap协议等,只要构造好表单,在JMeter中用相应的Sampler就可以模拟请求。

3、多个测试计划运行
  在编辑菜单栏中有个合并操作,点击后可以将多个测试计划合成一个,每一个脚本是一个线程组,运行时同时运行线程组即可。

4、找导致CPU瓶颈的程序
  在性能测试分析时,往往采用自底向上的方式来进行问题分析,我们从硬件的指标来反向追索问题根源。其中CPU的性能瓶颈分析最为常见。
  监控CPU使用率,CPU使用率分为系统和用户的使用率。
    系统CPU利用率高可以先关注下IO,有没有非空闲等待,通常的系统CPU利用高都是IO问题,此时的中断与切换都高。
    用户CPU利用率高,直接使用top命令查看系统进程和线程,通过线程或进程ID可以找到对应的程序。

5、找导致内存瓶颈的程序
  linux系统可用内存包括物理内存、缓存、程序占用的内存等部分。内存瓶颈会导致程序运行缓慢甚至系统崩溃,通过监控内存的使用情况发现潜在的性能问题。

6、找导致IO瓶颈的程序
  网络IO的监控可以监控网络中断、带宽、网络连接数及网络连接状态,从而确定那方面的瓶颈。
  本地磁盘IO可以监控有没有IO的非空闲等待

7、计算并发用户数
  并发数受到很多因素的影响。比如思考时间、工作时间、业务分布等,通常技术并发用户数有三种方式:
  由TPS来估算并发数
    由TPS来估算,适用于联机操作系统,这类系统响应时间快、业务量大。
    Vu(业务名称)=TPS(业务名称)x (RunTime+ThinkTime)
    Vu表示此业务的虚拟用户数,RunTime时测试程序/脚本运行一次所消耗的时间,包括事务时间和非事务时间
  由在线活动用户数来估算并发数
    适合于读请求多的系统,比如新闻

    JMeter—常见问题(十四)

  根据经验估算
    不是一种严谨的估算方式。

8、性能测试的分析方法
  自底向上:通过监控硬件及操作系统性能指标(CPU、内存、磁盘、网络等硬件资源的性能)来分析性能问题(配置、程序等)。因为用户请求最终是由计算机硬件设备来完成的。
  自顶向下:通过生成负载来观察被测试的系统性能,比如响应时间、吞吐量,然后从请求起点由外及里一层一层分析。

9、JMeter运行后出现乱码

10、JMeter默认语言的设置