首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >Jmeter-TCP( Socket) 连接发送数据

Jmeter-TCP( Socket) 连接发送数据

作者头像
程序媛淼淼
发布2022-07-01 14:42:18
发布2022-07-01 14:42:18
10.3K0
举报
文章被收录于专栏:程序员阿常程序员阿常

标语: 追着光,靠近光,成为光,然后散发光!

🔅

- 分享内容 -

《Jmeter–TCP(Socket) 连接发送数据》

🔅

- 适用场景 -

1. Socket连接,TCP传输

2. 客户端向服务器发送「十六进制格式文件」

3. Windows环境

🔅

- 操作步骤 -

00. 前置准备:

  • 1、配置好 Java 环境(见Java 安装与环境变量配置
  • 2、配置好 Jmeter 环境(无需安装,官网下载的zip包直接解压,双击运行jmeter,bat 即可)
  • 3、修改jmeter的配置文件jmeter.properties,修改TCP Sampler,如下图(发送十六进制格式文件)

01. 添加线程组

  • 1、在测试计划右键弹出下拉菜单(添加-->线程(用户)--->线程组)中选择线程组。
  • 2、线程组主要包含三个参数:线程数、准备时长(Ramp-Up Period(in seconds))、循环次数。
代码语言:javascript
复制
线程数:设置多少虚拟用户数在这里也就是设置        多少个线程数。准备时长:设置的虚拟用户数需要多长时间全部        启动。循环次数:每个线程发送请求的次数。     如果勾选了“永远”,那么所有线程会一直发送     请求,直到选择停止运行脚本。

02. 添加TCP取样器配置:

  • 在线程组上右键菜单(添加--->配置元件-→TCP取样器配置)选择TCP取样器配置。

配置说明

TCPClient classname:TCP发送有三种启用方式:

  • TCPClientImpl:文本数据,默认为这种
  • BinaryTCPClientImpl:传输16进制数据,指定包结束符。这种16进制文件会通过Jmeter GUI来转换。
  • LengthPrefixedBinaryTCPClientImpl:数据包中前2个字节为数据长度。可在bin/jmeter.properties配置文件中tcp.binarylength.prefix.length设置。

Target Server:TCP采样器中填写服务器地址、端口。 Connect:设置连接超时时间。 Response:设置响应超时时间。 Re-use connection:表示重复使用该连接发送请求。 Close connection:表示每次发送完该条数据后,关闭连接。 End of line(EOL) byte value:终止符。

比如,在我的项目中返回值转为 16 进制的时候如下: 7e800100050100019040011000000003010201447e 那么最后一个字节(8 位)应该是 7e 换算为 10 进制后为 126,那么在 eol 处设置为 126。

注意:终止符为一个字节,16进制数大于7F(127)后,该EOL值为负数。

比如:如果服务器返回最后一个字节为80,按单字节换成十进制为-128,EOL处的值要填写-128。 03. 添加TCP取样器:

建立TCP连接

TCP取样器已经配置过了,这里可以不再填写IP、PORT等参数。

注意:如果需要使用同一连接重复发送数据,每个TCP取样器的Re-use connection都

需要勾选上。

  • 在线程组上右键菜单(添加--->取样器-→TCP取样器)选择TCP取样器。
  • 建立通道1 发送16进制文本内容

04. 添加察看结果树:

添加察看结果树,右键点击线程组,在弹的菜单(添加--->监听器-→察看结果树)中选择察看结果树。

点击工具栏上的 绿色运行按钮 或者通过菜单栏(运行--->启动)来运行测试。

查看 "察看结果树" 的运行结果:

05. 添加聚合报告:

脚本的主要部分设置完成后,需要通过某种方式获得性能测试中的测试结果,在本例中,我们关心的是请求的响应时间。

Jmeter 使用监听器元件收集取样器记录的数据并以可视化的方式来呈现。

添加聚合报告,右键点击线程组,在弹的菜单(添加--->监听器-→聚合报告)中选择聚合报告。

点击工具栏上的 绿色运行按钮 或者通过菜单栏(运行--->启动)来运行测试。

查看 "聚合报告" 的运行结果:

  • Label:请求的名称,就是我们在进行测试的TCP sampler的名称
  • Samples:总共发给服务器的请求数量
  • Average:单个请求的平均响应时间,单位是毫秒
  • Median:50%的请求的响应时间
  • 90%Line:90%的请求的响应时间
  • 95%Line:95%的请求的响应时间
  • 99%Line:99%的请求的响应时间
  • Min:最小的响应时间
  • Max:最大的响应时间
  • Error%:错误率=错误的请求的数量/请求的总数
  • Throughput:吞吐量即表示每秒完成的请求数
  • Received KB/sec:每秒从服务器端接收到的数据量
  • Sent KB/Sec:每秒从发送到服务器端的数据

06. 添加图形结果:

添加图形结果,右键点击线程组,在弹的菜单(添加--->监听器-→图形结果)中选择图形结果。

点击工具栏上的 绿色运行按钮 或者通过菜单栏(运行--->启动)来运行测试。

查看 "图形结果" 的运行结果:

今天的分享就到这里啦,

我们下次见

END

2021.9.9

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-09-09,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 程序员阿常 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 01. 添加线程组:
  • 02. 添加TCP取样器配置:
  • 04. 添加察看结果树:
  • 05. 添加聚合报告:
  • 06. 添加图形结果:
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档