Jmeter 做 TCP 协议的性能测试并生成生成图形报告

JMeter 是 Apache 组织开发的基于 Java 的压力测试工具。它可以用于测试静态和动态资源,例如静态文件、Java 小服务程序、CGI 脚本、Java 对象、数据库、FTP 服务器, 等等。JMeter 可以用于对服务器、网络或对象模拟巨大的负载,来自不同压力类别下测试它们的强度和分析整体性能。另外,JMeter 能够对应用程序做功能/回归测试,通过创建带有断言的脚本来验证你的程序返回了你期望的结果。为了最大限度的灵活性,JMeter 允许使用正则表达式创建断言。

今天通过一个我工作中的实际案例给大家分享下怎么使用 Jmeter 工具做 TCP 协议的性能测试并生成生成图形报告。

环境安装

在安装Jmeter之前,请先检查下电脑有没有装JDK:开始->运行->然后输入cmd->进入命令行界面,输入 java -version , 出现以下信息就是此电脑已安装了 JDK。

 

下载完成后,解压、打开 bin/jmeter.bat 就可以在 windows 下运行其图形界面。

Jmeter是一款纯java的性能测试工具,跨平台运行方便、提供图形化界面设置、简单易用。

配置 Jmeter 环境变量

(1)我的电脑>鼠标右键菜单>属性>高级系统设置>环境变量;

( 2 ) 在系统变量中添加 2 个属性

( 3 ) 在用系统变量path后面加上 %JMETER_HOME%\bin 注意是系统变量

最后在cmd输入 jmeter 可以直接启动 Jmeter说明环境变量设置成功。

Jmeter项目配置

在 file 中新建 Test Plan,填入 Plan 的名称。

 

在 plan 下右键新建一个线程,写入你需要执行的线程数、线程执行时间、循环次数、调度器配置(在特定时间执行)。

在线程下右键,添加–sampler–TCP取样器,下图中红框中为必填项。

TCPClient classname 有三种设置:

  • TCPClientImpl:文本数据
  • BinaryTCPClientImpl:传输二进制数据,指定包结束符。
  • LengthPrefixedBinaryTCPClientImpl:数据包中前2个字节为数据长度。可在bin/jmeter.properties配置文件中 tcp.binarylength.prefix.length 设置。

服务器 ip 和端口:应该不用多说了,根据实际情况填写即可;

要发送的文本:这里就是 16 进制的数据了,可能会有朋友问这数据从哪里获取啊!当然是抓包获取了,也可以直接查日志找到的。

在线程下右键,添加–监听器,添加图形结果、聚合报告、查看结果树等,这些是为了执行脚本后查看结果了,下图是我执行后的数据。

 

 

生成 HTML 格式的性能测试报告

首先我再电脑桌面上新建了文件夹tcp,tcp 里新建 ResultReport 文件夹

Jmeter 执行测试后在 cmd 中执行命令

三个路径依次是:xxx.jmx文件路径,输出xxx.csv文件路径,要保存的ResultReport的文件路径。xxx.csv文件目录和ResultReport的文件目录必须为空,不然会报错。

这样就可以看到 HTML 报告了,发性能报告邮件也不愁没图了。

 

 

文章为pk哥原创,我在我的公众号: Python 知识圈 上会分享更多心得体会,你也可以关注。

***版权申明:本文为 Python知识圈 pyzhishiquan.com 原创,没有Python知识圈书面授权,请勿以任何形式转载,摘编,复制或镜像。***

为您推荐

发表评论

电子邮件地址不会被公开。