首页 > 其他分享 >Jmeter进行TCP压力测试

Jmeter进行TCP压力测试

时间:2024-02-09 21:55:39浏览次数:16  
标签:jmeter socket tcp server TCP 测试 Jmeter port

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

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

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

构建完成后如下图:

 

 

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

 

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

(1)TCPClient classname:org.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和端口号:输入自定义的即可

 

(3)End 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}

标签:jmeter,socket,tcp,server,TCP,测试,Jmeter,port
From: https://www.cnblogs.com/R-bear/p/18012635

相关文章

  • 网络游戏协议测试(接口测试)的一些总结
    什么是游戏协议?协议是网络游戏前后端交互的实现方式。游戏中协议的收发过程是怎样的?当我们在进行游戏的时候,我们点击了某个按钮进行某一种游戏行为,这个时候,客户端会按照跟服务器约定好的一些规则,将我们的游戏行为对应的请求和参数通过网络封包发送给服务器,服务端在收到这个......
  • 软件测试与游戏测试的区别
    功能上:功能上:软件测试只要基本上的功能不出现问题,不影响交互就没太大的问题;游戏测试则不同出现一些及其细微的功能缺陷都会导致游戏的胜负结果。性能上:性能上:软件测试讲究3-5-10的响应速度,3秒为良好优秀,5秒为一般,10秒为极差;但游戏在性能提供上讲究就会比较严格,一些细微的卡顿......
  • [职场] 面试专业测试考什么
    面试专业素质测试是什么职业素质是每个人生存发展的必要条件,对于大学生来说良好的职业素质是解决自身就业问题的根本保证。就业是民生之本,扩大就业是摆在各级党委和政府而前特别重要的现实性问题。以下是小编为您整理的面试专业素质测试是什么的相关内容。素质测试主要是......
  • PTES(Penetration Testing Execution Standard ,渗透测试执行标准)
    PTES是一种渗透测试标准,旨在提供一种通用语言描述的渗透测试执行范围和标准,始于2009年初,由一些创始成员围绕渗透测试行业讨论所得,参与者可以查看此列表。 其内容由7个主要部分组成,但该标准实际上并没有提供关于执行实际渗透测试的技术要求,但有一份相关的实践技术指南:http://ww......
  • 在spring场景下同时使用Mockito进行集成测试
    转自:GPT回答https://chat.openai.com/share/07721c36-f18e-429f-b570-d8e14b4d8b37Mockito@InjectMocks测试February8,2024 Anonymous如何使用@InjectMocks测试被代理对象ChatGPTChatGPT使用@InjectMocks来测试被代理对象是一种......
  • C#中获取进程当前路径各种方法的测试
    C#中获取进程当前路径各种方法的测试在CSharp中,获取当前进程的路径有很多种方式。同一个api在不同的运行和发布方式中,又会产生不同的效果。下面我用代码来测试一下效果,运行环境是:Windows10,.Net8。测试程序为放在``D:\的CurrentPathTest`目录。//不同的发布及运行方式//1.......
  • 用python写一个并发测试工具
    工作中会有一些需要并发测试的场景,例如:两人同时操作一条数据,此时需要验证结果是否符合预期 最初是借助jmeter来进行并发测试,建2个线程组,每个线程组中各放一个接口,启动时会同时执行个线程组中的接口,从而实现并发测试的目的但是每次都要打开jmeter,用起来不太方便,所以就尝试用pyt......
  • 断网测试3-彩票+路径数量
    第1题   彩票 查看测评数据信息每张彩票都印有6位数字,如果彩票的前三位数字的和恰好等于后三位数字的和,那么该彩票是"幸运彩票".输入格式 第一行,一个整数n,表示有n张彩票。1<=n<=1000。接下来有n行,每行是都印有6位数字。 输出格式 共n行,如果是"幸运彩票"输......
  • jacoco覆盖率测试工具
    简介jacoco是一个能跑覆盖率的工具,可以把覆盖率结果生成报告,和IDEA自带的覆盖率测试工具类似,eclipse是没有自带覆盖率测试功能的,jacoco可以在maven执行test周期的时候生成数据,可以作为eclipse覆盖率测试工具,jacoco生成的报告可以和sonaqube,jenkin,gitlab等工具联动,实现代码门禁的......
  • 扒开源安卓性能测试工具moblieperf源码——开发属于你自己的性能稳定性测试工具
    moblieperf下载和使用moblieperf由阿里巴巴开源的Android性能测试工具下载:官方源码地址mobileperfgithub使用:使用pycharm打开下载的项目使用只需要修改配置文件config.conf即可运行采集:a.mac、linux在mobileperf工具根目录下执行shrun.sh;b.windows双击run.bat配置......