1.先用pycharm运行一个udp服务
# encoding=utf-8
from socket import *
from time import ctime
import chardet
HOST = ''
PORT = 1200
BUFSIZ = 128
ADDR = (HOST, PORT)
# 创建一个服务器端UDP套接字
udpServer = socket(AF_INET, SOCK_DGRAM)
# 绑定服务器套接字
udpServer.bind(ADDR)
print('已经进入监听状态...')
while 1:
# 接收来自客户端的数据
data, addr = udpServer.recvfrom(BUFSIZ)
print(u"得到客户端数据:", data.decode("utf-8"))
# 向客户端发送数据
udpServer.sendto(b'%s %s[%s]' % ("服务器发送消息:".encode("utf-8"), ctime().encode("utf-8"), data), addr)
print('向客户端发送数据:', data, "自定义字符串")
udpServer.close()
2.在jmeter里安装好udp插件:UDP Protocol Support
3.创建线程组、结果树、和UDP取样器(jp@jc - UPD Request)
4.配置好IP、端口、Data Encode/Decode class、Request Data
PS:这里要注意Data Encode/Decode class,有以下四种格式:
[hl]
kg.apc.jmeter.samplers.HexStringUDPDecoder:直接发送16进制数据,HEX-encoded
kg.apc.jmeter.samplers.UDPSampler:直接发送字符串
kg.apc.jmeter.samplers.DNSJavaDecoder : dns解析填写格式如: www.baidu. A IN
kg.apc.jmeter.samplers.UDPTrafficDecoder : 你可以通过实现这个接口,来自定义编解码方法。
[/hl]
UDP Request