【jmeter】测试socket接口的简单应用
一、场景
有一天开发问我,有没有什么工具可以测试socket,tcp,当时有点懵,这种需求还是少见
二、方法
使用Jmeter可以进行相关的测试
三、创建服务端环境
使用python搞个socket服务端
import socket # 创建 socket对象 socket_server = socket.socket() # 绑定 socket_server到指定的ip地址 socket_server.bind(("localhost", 8888)) # 监听端口, listen()内书写数字,表示可以接受链接的数量 socket_server.listen(1) while True: # 等待客户端连接,接收到的 result是一个二元元组, accept()是一个阻塞的方法,如果没有连接不会往下执行 result = socket_server.accept() conn = result[0] # 客户端连接对象 address = result[1] # 客户端地址信息 print(f"接收到的客户端连接信息为{address}") # 接收客户端信息,recv接受的参数是缓冲区大小,一般1024即可,返回的是一个字节数组,bytes对象,不是字符串,再将其decode解码为字符串对象 data = conn.recv(1024).decode("UTF-8") print(f"客户端发来的消息是:{data}") # 回复消息 # msg = input("请输入回复的消息:") msg = "hello client!" if msg == 'exit': break conn.send(msg.encode("UTF-8")) # 关闭连接 conn.close() socket_server.close()
四、jmeter配置
添加线程组
添加TCP Sampler
配置TCP Sampler
添加结果树,查看结果
五、测试
首先启动服务端
我们发送一个hello消息
查看服务端接收的消息
查看结果树的信息
至此,基本流程结束,有此类需求的可以研究研究
参考链接:
Jmeter测试Socket协议(TCP)的接口测试 - 知足的人生 - 博客园