Jmeter-负载测试场景设计

发布时间 2023-04-02 15:46:32作者: 无敌大牛牛

负载测试场景设计

负载测试

逐步增加并发用户数,找到最大可接受的并发用户数区间。

  • 最大并发用户数

    • 一般是说把服务器压奔溃、或者出现持续报错

  • 最大可接受并发用户数

    • 能接收的标准

    • 最大可接受的并发用户数,并不一定是 tps值最大

所需插件

负载测试,需要引入插件: 'jpgc ' jpgc -standard set

  • 首先要先安装Jmeter Plugins Manager

  • 存放路径lib/ext

jp@gc - Stepping Thread Group

阶梯线程组

特点:每次递增的步长是一定的

  • this group will start N threads

    • 如N=100

      • 表示这个线程组将总共启动100个线程数

  • first wait for xx seconds

首先等待多少

  • 启动前,会等待多少时间, 相对于 普通线程组种延迟启动时间

  • then start N threads

    • 首先启动多少个线程数

    • 如N=10

      • 表示:先启动10个线程数

  • next add 10 threads every 30 seconds using ramp-up 5 seconds

    • 表示:每5s时间增加10个并发用户数,然后持续运行30s

      • 如首先启动20个线程,增加到10个以后(20+10),然后运行30s以后,再用5s的ramp-Up的时间去新增另一组10个

    • 即递增的步长

  • then hold load for xxxx seconds

    • 当增加到指定的总线程数以后,然后持续运行多少秒

  • finally stop 5 threads every 1seconds

    • 最后都会执行 每隔1s时间停止5用户

案例

/*
案例:
如已经找到了最大并发用户数的区间是45-50
这时候配置如下:
1、this group will start 50 threads
2、then start  45 threads
    表示先启动45个线程
3、next add  1 threads  every 10 seconds   using ramp-up 2 seconds
    缩小递增的步长
*/
​

 

负载场景设计思路

  • 性能测试场景设计的一个思路: 缓起步,快结束!

    • 缓起步

      • 通过缓慢的增加并发用户数,从而对服务器缓慢的增加压力

    • 快结束

      • 而不是瞬间结束,结束时间太快,可能导致 不可中断请求被强制中断,而出错。

监听器

  • Active Threads Over Time

    • 随着时间变化的活跃线程数 ====折线图

  • Response Times Over Time

    • 随着时间变化的响应时间图 ====折线图

    • 对应并发用户数的平均响应时间

    • 接口平均响应时间可接受的时间为1.5s 大于1.5s就不能接受

  • Transactions per Second(TPS)

    • 随着时间变化tps的图

    • 并发用户数增加,tps不一定会增加

分析: 看在并发用户数不变一段时间内,平均响应时间、平均TPS值。不看具体的某1个点