JMeter测试websocket性能测试基础实战之QPS检测过程解析

时间:2024-03-14 11:13:16

目录结构

一.测试需求
二.测试步骤

1.添加线程组

2.添加websocket open connection

3.设置QPS限制

4.添加监听器

5.运行脚本

6.监听器的各种报告视图分析

一、测试需求

需求:测试10000个用户并发连接websocket服务器QPS负载达到1200时的平均响应时间

1.添加线程组

JMeter测试websocket性能测试基础实战之QPS检测过程解析

Thread Group(线程组),主要包含以下3个参数:

1)线程数:Number of Threads(users),虚拟用户数
1个虚拟用户占用1个进程or线程,需要多少个虚拟用户就设置对应数量的线程数。

2)准备时长:Ramp-Up Period(in seconds),表示设置的虚拟用户数全部启动所需的时间
如:线程数=20个,准备时长=10s ==> 20/10=2 (个/s),即每秒启动2个线程

3)循环次数:Loop Count,每个线程发送请求的次数
如:线程数=20个,循环次数=5次 ==> 总请求数目=20×5=100 (个)
PS:若勾选"forever",则线程会一直发送请求,直至选择停止运行脚本

2.添加websocket open connection

JMeter测试websocket性能测试基础实战之QPS检测过程解析

JMeter测试websocket性能测试基础实战之QPS检测过程解析

配置参数:

(1)有ws与wss之分,  ws前缀是WebSocket连接的辨别标识,wss前缀是WebSocket安全连接的辨别标识。根据自己的实际情况填写

(2)Server Name or IP:WebSocket发送的目标服务器的地址或者名称

(3)Port:WebSocker服务器监听的端口号。(一般是HTTP 80端口,可以通过WireShark数据包得到)

(4)path:路径参数

3.设置QPS限制

JMeter测试websocket性能测试基础实战之QPS检测过程解析

JMeter测试websocket性能测试基础实战之QPS检测过程解析

Constant Throughput Timer属性

JMeter测试websocket性能测试基础实战之QPS检测过程解析

4.添加监视器

JMeter使用监听器手机取样器记录的数据,并以可视化方式呈现。
如:聚合报告,可更为直观查看测试结果

JMeter测试websocket性能测试基础实战之QPS检测过程解析

5.运行脚本

JMeter测试websocket性能测试基础实战之QPS检测过程解析

6.聚合报告分析

JMeter测试websocket性能测试基础实战之QPS检测过程解析

JMeter测试websocket性能测试基础实战之QPS检测过程解析

熟悉 LoadRunner 的朋友一定不会对其 TPS(每秒事务数)、TRT(事务响应时间) 等视图感到陌生,因为这是压力测试最为关键的两个指标。
JMeter 以其开源、轻巧、灵活、扩展性高等特性赢得了广大测试从业人员的青睐,但是它没有像 LoadRunner 那样提供一个 TPS、TRT 之类的视图,虽然聚合报告也能说明一些整体以及实时的问题,但是就整体趋势、实时平均值走向、稳定性报告方面

7.添加线程组 -> 添加 -> 监听器 -> [email protected] Transaction per Second。某次压测实际效果图:

JMeter测试websocket性能测试基础实战之QPS检测过程解析

8.添加TRT视图

线程组 -> 添加 -> 监听器 -> [email protected] Response Times Over Time。某次压测实际效果图

JMeter测试websocket性能测试基础实战之QPS检测过程解析

PS:
以上响应时间的单位为:毫秒(ms)