Jmeter进行TCP压力测试

1.启动Jmeter后,在左侧测试计划节点,右键“添加”-》“线程”-》“线程组”python

2.在新增的线程组节点上。右键“添加”-》“取样器”-》“TCP取样器”apache

3.在线程组节点上,再右键“添加”-》“监听器”-“察看结果树”服务器

构建完成后以下图:并发

 

 

4.设置并发相关参数是在线程组中,线程数即为并发数,其余具体参数见附件,以下图:socket

 

 5.TCP取样器中,设置TCP请求的参数,主要设置的参数为:tcp

(1)TCPClient classnameorg.apache.jmeter.protocol.tcp.sampler.TCPClientImpl编辑器

TCPClient classname 该参数通常有三个值设置:测试

  • org.apache.jmeter.protocol.tcp.sampler.TCPClientImpl(以文本编辑器中的纯文本做为内容发送)
  • org.apache.jmeter.protocol.tcp.sampler.BinaryTCPClientImpl(以文本编辑器中所编辑的16进制字符(hex)内容为基础转换为二进制的字节内容进行发送)
  • org.apache.jmeter.protocol.tcp.sampler.LengthPrefixedBinaryTCPClientImpl(在BinaryTCPClientImpl基础上默认以发送内容的长度以字节前缀进行填充)

2)服务器IP和端口号:输入自定义的便可spa

 

3End of line(EOL) byte value: 这个参数和服务器返回的数据有关,是数据器服务流的一个结束标识。没有设置EOL将会一直读到输入流结束为止。好比服务器返回的字符串是:abc}}符号在ascii码表中对应的10进制为125,这里就填125线程

4)要发送的文本,这里就填要发送的文本内容

6.点击Jmeter运行按钮

 

便可完成并发操做。

 

附:

经过python建立一个TCP Server服务器,当接收到TCP请求后,响应字符串{get out}

import socket
import sys


def start_tcp_server(ip, port):
# create socket
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
server_address = (ip, port)
# bind port
print 'starting listen on ip %s, port %s' % server_address
sock.bind(server_address)
# starting listening, allow only one connection
try:
sock.listen(1)
except socket.error, e:
print "fail to listen on port %s" % e
sys.exit(1)
while True:
print "waiting for connection"
client, addr = sock.accept()
print 'having a connection:',addr
client.send("{get out}")
client.close()


if __name__ == '__main__':
start_tcp_server('192.168.31.3', 48569)
Server启动后,在jmeter中运行发送TCP请求,在察看结果树中能够看到TCP请求成功

 

咱们经过Jmeter请求的 Hello World

 获得响应数据 {get out}

相关文章
相关标签/搜索