searchusermenu
  • 发布文章
  • 消息中心
点赞
收藏
评论
分享
原创

JMeter压测学习

2024-05-23 05:31:40
3
0
  1. 获取压测需要的参数;
# 模拟压测所需数据的处理方式
import json

def write_txt_test():
    a = list(range(1000000))  # 模拟的压测所需参数
    with open("test_write.txt", "w+") as f:
        i = 0
        n = 30 # 每次压测的数量
        length = len(a)
        num = length // n
        # 以列表的方式将数据存到txt文件中
        # 以回车为分隔符
        for _ in range(num):
            k = a[i:i+n]
            i = i + n
            print("k--------", k)
            f.write(json.dumps(k))
            f.write("\n")
        if length % n != 0:
            k = a[num*n:]
            print("k-------------", k)
            f.write(json.dumps(k))
            f.write("\n")
  1. JMeter的基本配置
  • File-->New,新建测试计划;
  • 右键测试计划,add-->thread-->thread group,如图:
    2.png
  • 设置线程组的相关配置——线程数(模拟用户数,多个线程用于模仿对服务器的并发访问)、Ramp-UpTime(启动线程需要的时间)、循环次数(设置线程组中的每个线程循环次数),如图: 3.png
  • 设置采样器HttpRequest,如图:
    image.png
  • 设置监听器——view result tree和summary report,如图:
    image.png
  • 设置请求头和请求数据源,如图:
    image.png
  • 关于请求数据源的设置主要有数据路径和变量名称(后面监听器中引用所需要),如图
    image.png
  • 变量的引用方式,通过${变量名},如图:
    image.png

至此,关于JMeter的基本设置已完成,点击上面的绿色箭头,就可以对接口进行压测了。

压测结果

image.png

结果说明:
样本(Samples):取样器请求的数量

平均值(Average):请求(事务)的平均响应时间

最小值(Min):请求的最小响应时间

最大值(Max):请求的最大响应时间

标准偏差(Std.Dev): 响应时间的标准方差

异常 %(Error):请求(事务)错误的数量

吞吐量(Throughput):每秒取样器执行的数量,相当于 TPS

接收 KB/sec(Received KB/sec):每秒接收的千字节数

发送 KB/sec(Sent KB/sec):每秒发送的千字节数

平均字节数(Avg.Bytes):取样结果返回的平均大小

0条评论
0 / 1000
孟****强
4文章数
0粉丝数
孟****强
4 文章 | 0 粉丝